Wie um zu überprüfen, ob ein array vorhanden ist, wenn nicht erstellen Sie es, in JavaScript?
Wie kann ich überprüfen, ob ein bestimmtes array vorhanden ist, und wenn nicht, wird Sie erstellt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, um zu überprüfen, ob ein array x existiert, und legen Sie es, wenn es nicht funktioniert, können Sie tun,
Array
Konstruktor - dies könnte auftreten, wenn die Skripterstellung über mehrere frames.Array.isArray(x)
: stackoverflow.com/a/38670091/271442if (Array.isArray(array) && array.length)
finden Sie hier mehr stackoverflow.com/a/24403771/364951arr
ist bereits definiert, die in den jeweiligen Anwendungsbereich, warum dann die Mühe mitvar ...
? Sie können nur tunarr = arr || [];
var
gehisst werden und deshalb würde es immer nur[]
? Edit: nvm, ich bin falsch 😀https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray
Oder wenn
x
könnte ein array, und Sie wollen, stellen Sie sicher, es ist eine:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat
x is not defined
in beiden Fällenx
ist die variable, könnte ein array ist oder nicht. Sie definieren. Dies ist nur Beispiel-code ...Können Sie die
typeof
- operator zu testen undefined und dieinstanceof
- operator um zu testen, ob eine Instanz von Array:undefined
ist nicht ein instanceof Array.arr
ist noch nicht definiertWenn Sie möchten, um zu überprüfen, ob das Objekt bereits in einem Array, um zu vermeiden, die bekannte Probleme der
instanceof
operator bei der Arbeit in multi-umrahmt von DOM-Umgebungen, können Sie mit derObject.prototype.toString
Methode:arr
arr
ist schwarzarbeit einReferenceError
wird geworfen, in der rechten Seite der Zuweisung...Wenn Sie sprechen über eine browser-Umgebung, dann werden alle globalen Variablen sind Mitglieder des window-Objekts. So überprüfen: