Próbuję napisać funkcję, która albo akceptuje listę ciągów, albo pojedynczy ciąg. Jeśli jest to ciąg, to chcę go przekonwertować na tablicę z tylko jednym elementem. Następnie mogę go przepuścić bez obawy o błąd.
Jak więc sprawdzić, czy zmienna jest tablicą?
1 odpowiedź
W nowoczesnych przeglądarkach możesz to zrobić tak:
Array.isArray(obj)
Aby zachować kompatybilność wsteczną, możesz dodać następujące
if (typeof Array.isArray === 'undefined') {
Array.isArray = function(obj) {
return Object.prototype.toString.call(obj) === '[object Array]';
}
};
Jeśli używasz jQuery, możesz użyć jQuery.isArray(obj) lub $.isArray(obj). Jeśli używasz podkreślenia, możesz użyć .isArray(obj) Jeśli nie musisz wykrywać tablic utworzonych w różnych ramkach, możesz również użyć instancji
obj instanceof Array