natywna funkcja V8. Jest szybki, zawsze jest poprawny. To jest część ES5.
Sprawdza, czy obiekt został utworzony za pomocą konstruktora tablicy.
Metoda z podkreślenia. Oto fragment pobrany z ich źródła
var toString = Object.prototype.toString,
nativeIsArray = Array.isArray;
_.isArray = nativeIsArray || function(obj) {
return toString.call(obj) === '[object Array]';
};
Ta metoda przyjmuje obiekt i wywołuje na nim Object.prototype.toStringmetodę. To zawsze będzie zwracane w [object Array]przypadku tablic.
Z własnego doświadczenia toStringwynika, że najskuteczniejsza jest metoda zadawania pytań, ale nie jest tak krótka ani czytelna, jak instanceof Arrayi nie jest tak szybka jak, Array.isArrayale to jest kod ES5 i staram się unikać używania go do przenoszenia.
Osobiście poleciłbym spróbować użyć underscore, która jest biblioteką z typowymi metodami narzędziowymi. Posiada wiele przydatnych funkcji, które OSUSZA Twój kod.
utilbiblioteki node.js -require('util').isArray(arr)nodejs.org/api/util.html#util_util_isarray_object