Der Spread-Operator in JavaScript

In ES6 wurde ein spezieller Operator ... eingeführt, der spread genannt wird.

Wenn der Spread-Operator vor einem Array steht, teilt er dieses Array in einzelne Werte auf, indem er das Array in einen Satz von Parametern umwandelt, die für den Aufruf einer Funktion benötigt werden.

Das klingt sicherlich unklar, deshalb schauen wir uns ein einfaches Beispiel an. Nehmen wir an, wir haben eine Funktion, die 3 Parameter akzeptiert und deren Summe zurückgibt:

javascriptfunction func(num1, num2, num3) {
  return num1 + num2 + num3;
}

Nehmen wir weiter an, wir haben ein Array mit drei Elementen:

javascriptlet arr = [1, 2, 3];

Offensichtlich können wir nicht einfach dieses Array als Parameter an die Funktion übergeben, so:

javascriptlet arr = [1, 2, 3];
func(arr);

Denn in diesem Fall würde das gesamte Array in den ersten Parameter der Funktion gelangen, obwohl in diesen Parameter eine Zahl übergeben werden müsste (und auch in die anderen Parameter ebenfalls).

Natürlich könnte man folgendermaßen vorgehen:

javascriptlet arr = [1, 2, 3];
func(arr[0], arr[1], arr[2]);

Aber es gibt einen einfacheren Weg - den Spread-Operator zu verwenden:

javascriptlet arr = [1, 2, 3];
func(...arr);

Das Vorhandensein einer Variable ist nicht zwingend erforderlich - man kann spread direkt auf das Array anwenden:

javascriptfunc(...[1, 2, 3]);
Задание 1

Gegeben ist ein Array:

javascriptlet arr = [1, 2, 3, 4, 5];

Gegeben ist auch eine Funktion:

javascriptfunction func(num1, num2, num3, num4, num5) {
  return num1 + num2 + num3 + num4 + num5;
}

Ermitteln Sie mithilfe der angegebenen Funktion die Summe der Elemente des Arrays.