Junior
Kaip galima patikrinti, ar šis laukas yra masyvas?
sobes.tech AI
Atsakymas iš AI
Yra keletas būdų patikrinti, ar duotas laukas yra masyvas:
-
Array.isArray(): Labiausiai rekomenduojamas ir modernus būdas.// Patikrina, ar reikšmė yra masyvas. // Grąžina true arba false. Array.isArray([]); // true Array.isArray({}); // false Array.isArray(null); // false Array.isArray(undefined); // false Array.isArray(123); // false Array.isArray('eilutė'); // false -
instanceof Array: Veikia su masyvais, sukurtais dabartiniame frame.// Patikrina, ar objektas yra `Array` klasės pavyzdys. // Gali duoti neteisingus rezultatus dirbant su iframe. [] instanceof Array; // true new Array() instanceof Array; // true ({}); // false -
Object.prototype.toString.call(): Patikimas būdas, kuris apeinainstanceofproblemas skirtinguose frame.// Grąžina objekto tipo tekstinę reprezentaciją. // Masyvams grąžina "[object Array]". Object.prototype.toString.call([]); // "[object Array]" Object.prototype.toString.call({}); // "[object Object]" Object.prototype.toString.call(null); // "[object Null]" Object.prototype.toString.call(undefined); // "[object Undefined]" -
constructorsavybės patikrinimas: Mažiau patikimas, nesconstructorsavybė gali būti pakeista.// Patikrina, ar objekto konstruktorius yra Array. [].constructor === Array; // true ({}).constructor === Object; // false
Dauguma atvejų rekomenduojama naudoti Array.isArray() metodą.