Junior
Wie kann man überprüfen, ob dieses Feld ein Array ist?
sobes.tech KI
Antwort von AI
Es gibt mehrere Möglichkeiten zu überprüfen, ob ein gegebenes Feld ein Array ist:
-
Array.isArray(): Die bevorzugte und moderne Methode.// Überprüft, ob der Wert ein Array ist. // Gibt true oder false zurück. Array.isArray([]); // true Array.isArray({}); // false Array.isArray(null); // false Array.isArray(undefined); // false Array.isArray(123); // false Array.isArray('Zeichenkette'); // false -
instanceof Array: Funktioniert für Arrays, die im aktuellen Frame erstellt wurden.// Überprüft, ob das Objekt eine Instanz der Klasse Array ist. // Kann falsche Ergebnisse bei der Arbeit mit iframes liefern. [] instanceof Array; // true new Array() instanceof Array; // true ({}); // false -
Object.prototype.toString.call(): Zuverlässige Methode, die Probleme mitinstanceofin verschiedenen Frames umgeht.// Gibt eine String-Darstellung des Objekttyps zurück. // Für Arrays gibt es "[object Array]" zurück. 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]" -
Überprüfung der Eigenschaft
constructor: Weniger zuverlässig, da die Eigenschaftconstructorgeändert werden kann.// Überprüft, ob der Konstruktor des Objekts Array ist. [].constructor === Array; // true ({}).constructor === Object; // false
Die empfohlene und zuverlässigste Methode in den meisten Fällen ist die Verwendung von Array.isArray().