JavaScript: Häufige Fehler beim Erstellen von Arrays und wie du sie vermeidest
Bei der Erstellung und Verwendung von Arrays treten einige häufige Fehler auf, die du vermeiden solltest.
Fehler 1: Löcher in Arrays
Arrays mit „Löchern“ (sparse arrays) entstehen, wenn nicht alle Indizes aufeinanderfolgend belegt sind:
const lückenhaft = [];
lückenhaft[0] = "Eins";
lückenhaft[2] = "Drei";
console.log(lückenhaft); // Ausgabe: ["Eins", leerer Slot, "Drei"]
console.log(lückenhaft.length); // Ausgabe: 3
Solche Arrays können zu Verwirrung führen, da einige Array-Methoden die Lücken unterschiedlich behandeln. Manche überspringen sie, andere füllen sie mit undefined
.
Fehler 2: Länge vs. höchster Index
Die Länge eines Arrays () entspricht dem höchsten Index plus 1, nicht der Anzahl der tatsächlich gespeicherten Elemente: length
const seltsam = [];
seltsam[1000] = "weit entfernt";
console.log(seltsam.length); // Ausgabe: 1001
Dies kann zu Leistungsproblemen und unerwartetem Verhalten führen, besonders bei Schleifendurchläufen.
Fehler 3: Verwechslung von Objekteigenschaften und Array-Elementen
Wenn Du zu einem Array Eigenschaften mit nicht-numerischen Namen hinzufügst, werden diese nicht als Elemente gezählt:
const verwirrend = [1, 2, 3];
verwirrend.extra = "Zusatzinfo";
console.log(verwirrend.length); // Ausgabe: 3 (nicht 4)
console.log(verwirrend); // Ausgabe: [1, 2, 3]
// Die Eigenschaft 'extra' ist in der Standardausgabe oft nicht sichtbar