Lädt...

Array-Methoden

Auf der Farbseite hat Überschreiben die Anzahl nicht angetastet. Diesmal liegt ein Einkauf vor dir, mit Brot, Milch und Eiern. Ein Aufruf darf diese Posten vermehren oder verringern.

Die Anzahl darf sich bewegen

Diese fünf Aufrufe ändern die Liste, die du schon hast, nicht einen frischen Text wie die Werkzeuge für Zeichenketten und nicht eine Funktion, die du selbst auf ein Objekt gelegt hast. push, pop, unshift, shift und splice sind fertige Werkzeuge der Liste.

Fünf Aufrufe auf einer Karte

Lass die Karte neben den Beispielen liegen, damit du nicht jedes Mal nach oben blätterst. Oft ist der Wert, der zurückkommt, nicht der Korb. Es ist eine Zahl, der Posten, der ging, oder eine kleine Liste.

📊 Fünf Aufrufe für die Liste

Aufruf Wo er wirkt Was zurückkommt length
push Ende die neue Länge wächst um so viele Posten, wie du gabst
pop Ende der entfernte Posten sinkt um eins
unshift vorn die neue Länge wächst um so viele Posten, wie du gabst
shift vorn der entfernte Posten sinkt um eins
splice eine Stelle, die du wählst eine kleine Liste der entfernten Posten sinkt um die Löschzahl

Aufrufe, die etwas hinzufügen, geben die neue Länge als Zahl zurück, und Aufrufe, die von einem Ende nehmen, geben den Posten selbst. splice gibt selbst beim Löschen einer einzigen Stelle eine kleine Liste zurück, und das Wort sitzt an Stelle 0 dieses Ergebnisses.

Tee am Ende

Der Korb beginnt mit Brot, Milch und Eiern. push legt Tee hinter die Eier. Die Zahl, die du sofort hörst, ist die jetzige Zahl der Fächer.

Tee ans Ende legen

javascript
let cart = ["bread", "milk", "eggs"];
let n = cart.push("tea");
console.log(n);
console.log(cart[3]);
console.log(cart.length);

n ist 4, also die neue Länge, nicht das Wort tea. Stelle 3 hält den Tee, und length ist ebenfalls 4, weil nur ein Posten angehängt wurde. Zwei Argumente würden zwei Fächer Wachstum bedeuten. Hier gibt es ein Argument, damit die Zahl leicht zu lesen bleibt.

Den letzten Posten nehmen

javascript
let cart = ["bread", "milk", "eggs"];
let gone = cart.pop();
console.log(gone);
console.log(cart.length);

Der letzte Posten geht

pop hebt die Eier vom Ende und gibt diese Zeichenkette zurück, und length wird 2. Im Korb bleiben Brot und danach Milch. Dieser Aufruf gibt die neue Länge nicht zurück. Ein leerer Korb gäbe undefined, und die Beispiele dieser Seite starten nie leer.

Tee nach vorn legen

javascript
let cart = ["bread", "milk", "eggs"];
let n = cart.unshift("tea");
console.log(n);
console.log(cart[0]);
console.log(cart[1]);

Vorn ist neu

unshift gibt ebenfalls 4 zurück, weil das die neue Länge ist, und Stelle 0 ist jetzt Tee. Brot rutscht auf Stelle 1, ohne dass ein Fach überschrieben wird. Jeder ältere Posten macht einen Schritt zum Ende.

Den vorderen Posten nehmen

javascript
let cart = ["bread", "milk", "eggs"];
let gone = cart.shift();
console.log(gone);
console.log(cart[0]);
console.log(cart.length);

Vorn wird leer

shift gibt Brot zurück, also den Posten, der ging, nicht eine Länge. Danach ist Stelle 0 die Milch, und length ist 2. Die Eier sind immer noch letzte. Sie sitzen nur noch auf Stelle 1.

Das mittlere Fach schneiden

javascript
let cart = ["bread", "milk", "eggs"];
let removed = cart.splice(1, 1);
console.log(removed[0]);
console.log(cart.length);
console.log(cart[1]);

Ein Fach, das du gewählt hast

Das erste Argument ist die Startstelle, das zweite sagt, wie viele Fächer weg sollen. Milch geht, und removed ist eine Liste mit einem Fach, also ist removed[0] Milch und nicht der Aufruf selbst die Zeichenkette Milch. length wird 2 und Stelle 1 sind die Eier, weil Brot auf 0 blieb und die Eier die Lücke schlossen. Übergibst du 0 als Löschzahl, wird eingefügt, ohne zu löschen. Diese Form lässt du noch liegen.

Die Seite druckt die neue Länge

Füge Tee mit push hinzu. Schreib danach length in den Absatz. Die Zeile soll die Anzahl sein, nicht der Einkaufszettel.

Seitenbeispiel — Länge nach push

html
<!DOCTYPE html>
<html>
<head>
<title>array-methods — page</title>
</head>
<body>
<p id="line">…</p>
<script>
let cart = ["bread", "milk", "eggs"];
cart.push("tea");
let box = document.getElementById("line");
box.textContent = cart.length;
</script>
</body>
</html>

Der Absatz zeigt 4. Tausch die angeschobene Zeichenkette von Tee zu Marmelade und lade neu; die Zeile bleibt 4, weil du immer noch einen Posten hinzufügst. Das Wort hat sich geändert, die Anzahl nicht. Brot, Milch und Eier bleiben vor dem, was du mit push hineingelegt hast.

Übe an einem frischen Korb

  1. Lege Tee mit push hinter Brot, Milch und Eier und lies sowohl die zurückgegebene Zahl als auch Stelle 3.
  2. Rufe einmal pop auf und lies das entfernte Wort samt neuer Länge, dann setze Tee mit unshift nach vorn und sieh Stelle 0 und Stelle 1.
  3. Rufe einmal shift auf, lies das gegangene Wort und die neue Stelle 0, dann splice ab Stelle 1 mit einem gelöschten Fach und halte removed[0] neben die Länge.
  4. Auf der Seite push für Tee, neu laden, die Zeile lesen, dann Tee zu Marmelade machen und noch einmal neu laden.

Wo Punkte verloren gehen

  • Du wolltest ein Fach hinzufügen und schriebst cart[1] = "tea", oder die Klammern bei push und pop fehlten
  • Den Wert von pop hast du für die neue Länge gehalten
  • Du hast erwartet, dass splice die nackte Zeichenkette Milch gibt und keine Liste
  • Du dachtest, Stelle 0 bleibe nach unshift Brot, oder du hast diese Seite mit einem Gang über jeden Posten und einer Suche nach dem Wert vermischt

Das bleibt hängen

  • Diese Aufrufe bearbeiten dieselbe Liste
  • push und unshift geben die neue Länge zurück, pop und shift den Posten, der ging
  • splice gibt eine kleine Liste der entfernten Posten
  • Der Absatz kann nach push nur die Länge zeigen
  • Als Nächstes kommt das Durchlaufen, die Suche im Anschluss

🧠 Testen Sie Ihr Wissen

Bereit zum Start

Testen Sie Ihr Wissen

Fordern Sie sich mit diesem interaktiven Quiz heraus und sehen Sie, wie gut Sie das Thema verstehen

❓
8
Fragen
🎯
70%
Zum Bestehen
♾️
∞
Zeit
🔄
∞
Versuche

📝 Anweisungen

  • Lesen Sie jede Frage sorgfältig
  • Wählen Sie die beste Antwort für jede Frage
  • Sie können das Quiz so oft wiederholen, wie Sie möchten
  • Ihr Fortschritt wird oben angezeigt