Baseline Widely available
Die length
-Dateneigenschaft einer Array
-Instanz repräsentiert die Anzahl der Elemente in diesem Array. Der Wert ist eine vorzeichenlose 32-Bit-Ganzzahl, die immer numerisch gröÃer als der höchste Index im Array ist.
const clothing = ["shoes", "shirts", "socks", "sweaters"];
console.log(clothing.length);
// Expected output: 4
Wert
Eine nicht negative ganze Zahl, die kleiner als 232 ist.
Schreibbar ja Aufzählbar nein Konfigurierbar nein BeschreibungDer Wert der length
-Eigenschaft ist eine nicht negative ganze Zahl mit einem Wert kleiner als 232.
const listA = [1, 2, 3];
const listB = new Array(6);
console.log(listA.length);
// 3
console.log(listB.length);
// 6
listB.length = 2 ** 32; // 4294967296
// RangeError: Invalid array length
const listC = new Array(-100); // Negative numbers are not allowed
// RangeError: Invalid array length
Das Array-Objekt beobachtet die length
-Eigenschaft und synchronisiert den length
-Wert automatisch mit dem Inhalt des Arrays. Das bedeutet:
length
auf einen Wert kleiner als die aktuelle Länge gesetzt wird, wird das Array verkürzt â Elemente, die über die neue length
hinausgehen, werden gelöscht.length
hinaus gesetzt wird, wird das Array erweitert â die length
-Eigenschaft wird erhöht, um den neuen höchsten Index widerzuspiegeln.length
auf einen ungültigen Wert (z. B. eine negative Zahl oder eine nicht ganzzahlige Zahl) gesetzt wird, wird eine RangeError
-Ausnahme ausgelöst.Wenn length
auf einen gröÃeren Wert als die aktuelle Länge gesetzt wird, wird das Array durch das Hinzufügen von leeren Slots erweitert, nicht durch tatsächliche undefined
-Werte. Leere Slots haben spezielle Interaktionen mit Array-Methoden; siehe Array-Methoden und leere Slots.
const arr = [1, 2];
console.log(arr);
// [ 1, 2 ]
arr.length = 5; // set array length to 5 while currently 2.
console.log(arr);
// [ 1, 2, <3 empty items> ]
arr.forEach((element) => console.log(element));
// 1
// 2
Siehe auch Beziehung zwischen length
und numerischen Eigenschaften.
Im folgenden Beispiel wird das Array numbers
durch Ablesen der length
-Eigenschaft durchlaufen. Der Wert in jedem Element wird dann verdoppelt.
const numbers = [1, 2, 3, 4, 5];
const length = numbers.length;
for (let i = 0; i < length; i++) {
numbers[i] *= 2;
}
// numbers is now [2, 4, 6, 8, 10]
Verkürzung eines Arrays
Das folgende Beispiel verkürzt das Array numbers
auf eine Länge von 3, wenn die aktuelle Länge gröÃer als 3 ist.
const numbers = [1, 2, 3, 4, 5];
if (numbers.length > 3) {
numbers.length = 3;
}
console.log(numbers); // [1, 2, 3]
console.log(numbers.length); // 3
console.log(numbers[3]); // undefined; the extra elements are deleted
Leeres Array mit fester Länge erstellen
Das Setzen von length
auf einen Wert, der gröÃer ist als die aktuelle Länge, erstellt ein lückenhaftes Array.
const numbers = [];
numbers.length = 3;
console.log(numbers); // [empty x 3]
Array mit nicht überschreibbarer Länge
Die length
-Eigenschaft wird vom Array automatisch aktualisiert, wenn Elemente über die aktuelle Länge hinaus hinzugefügt werden. Wenn die length
-Eigenschaft nicht überschreibbar gemacht wird, kann das Array sie nicht aktualisieren. Dies verursacht einen Fehler im Strikten Modus.
"use strict";
const numbers = [1, 2, 3, 4, 5];
Object.defineProperty(numbers, "length", { writable: false });
numbers[5] = 6; // TypeError: Cannot assign to read only property 'length' of object '[object Array]'
numbers.push(5); // // TypeError: Cannot assign to read only property 'length' of object '[object Array]'
Spezifikationen Browser-Kompatibilität Siehe auch
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4