Die Operatoren Spread und Rest, die beide durch drei Punkte (...) dargestellt werden, sind vielseitige Funktionen in JavaScript, die in ES6 eingeführt wurden. Obwohl sie die gleiche Syntax haben, dienen sie unterschiedlichen Zwecken: Der Spread-Operator wird zum Erweitern von Elementen verwendet, während der Rest-Operator zum Sammeln von Elementen verwendet wird.
Der Spread-Operator wird verwendet, um Elemente eines Arrays, Objekts oder Iterables in einzelne Elemente zu erweitern.
Der Spread-Operator kann zum Kopieren, Verketten oder Übergeben von Array-Elementen verwendet werden.
Beispiel: Arrays kopieren
const arr1 = [1, 2, 3]; const arr2 = [...arr1]; // Creates a copy of arr1 console.log(arr2); // Output: [1, 2, 3]
Beispiel: Verketten von Arrays
const arr1 = [1, 2, 3]; const arr2 = [4, 5, 6]; const combined = [...arr1, ...arr2]; console.log(combined); // Output: [1, 2, 3, 4, 5, 6]
Beispiel: Übergabe von Elementen an Funktionen
const numbers = [10, 20, 30]; console.log(Math.max(...numbers)); // Output: 30
Sie können den Spread-Operator verwenden, um Objekte zu kopieren oder zusammenzuführen.
Beispiel: Objekte kopieren
const obj1 = { a: 1, b: 2 }; const obj2 = { ...obj1 }; console.log(obj2); // Output: { a: 1, b: 2 }
Beispiel: Objekte zusammenführen
const obj1 = { a: 1, b: 2 }; const obj2 = { b: 3, c: 4 }; const merged = { ...obj1, ...obj2 }; console.log(merged); // Output: { a: 1, b: 3, c: 4 }
Der Rest-Operator sammelt mehrere Elemente in einem einzigen Array oder Objekt. Es wird häufig in Funktionsparametern oder Destrukturierungszuweisungen verwendet.
Der Rest-Operator kann eine unbegrenzte Anzahl von Argumenten in einem Array sammeln.
Beispiel: Argumente sammeln
function sum(...numbers) { return numbers.reduce((total, num) => total + num, 0); } console.log(sum(1, 2, 3, 4)); // Output: 10
Der Rest-Operator sammelt verbleibende Elemente in einer Array-Destrukturierungsoperation.
Beispiel: Array-Destrukturierung
const [first, second, ...rest] = [1, 2, 3, 4, 5]; console.log(first); // Output: 1 console.log(second); // Output: 2 console.log(rest); // Output: [3, 4, 5]
Der Rest-Operator sammelt verbleibende Eigenschaften in einer Objektdestrukturierungsoperation.
Beispiel: Objektdestrukturierung
const arr1 = [1, 2, 3]; const arr2 = [...arr1]; // Creates a copy of arr1 console.log(arr2); // Output: [1, 2, 3]
Aspect | Spread Operator | Rest Operator |
---|---|---|
Purpose | Expands elements into individual items | Collects items into a single entity |
Use Cases | Copying, merging, passing elements | Collecting function arguments, destructuring |
Data Types | Arrays, Objects, Iterables | Arrays, Objects |
const arr1 = [1, 2, 3]; const arr2 = [4, 5, 6]; const combined = [...arr1, ...arr2]; console.log(combined); // Output: [1, 2, 3, 4, 5, 6]
const numbers = [10, 20, 30]; console.log(Math.max(...numbers)); // Output: 30
Spread-Operator (...): Erweitert Arrays, Objekte oder Iterables in einzelne Elemente.
Das obige ist der detaillierte Inhalt vonBeherrschen von Spread- und Rest-Operatoren in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!