Operátor šírenia kódu JavaScript

V tomto výučbe sa pomocou príkladov dozviete o operátore šírenia kódu JavaScript.

Operátor šírenia je nový prírastok k funkciám dostupným vo verzii JavaScript ES6 .

Operátor šírenia

Operátor šírenia sa používa na rozšírenie alebo rozšírenie iterovateľného súboru alebo poľa. Napríklad,

 const arrValue = ('My', 'name', 'is', 'Jack'); console.log(arrValue); // ("My", "name", "is", "Jack") console.log(… arrValue); // My name is Jack

V tomto prípade kód:

 console.log(… arrValue)

je ekvivalentné s:

 console.log('My', 'name', 'is', 'Jack');

Kopírujte pole pomocou operátora šírenia

Môžete tiež použiť syntax rozloženia na skopírovanie položiek do jedného poľa. Napríklad,

 const arr1 = ('one', 'two'); const arr2 = (… arr1, 'three', 'four', 'five'); console.log(arr2); // Output: // ("one", "two", "three", "four", "five")

Klonujte pole pomocou operátora šírenia

V JavaScripte sú objekty priradené odkazom, nie hodnotami. Napríklad,

 let arr1 = ( 1, 2, 3); let arr2 = arr1; console.log(arr1); // (1, 2, 3) console.log(arr2); // (1, 2, 3) // append an item to the array arr1.push(4); console.log(arr1); // (1, 2, 3, 4) console.log(arr2); // (1, 2, 3, 4)

Tu obidve premenné arr1 a arr2 odkazujú na rovnaké pole. Preto zmena jednej premennej vedie k zmene oboch premenných.

Ak však chcete kopírovať polia tak, aby neodkazovali na rovnaké pole, môžete použiť operátor šírenia. Týmto spôsobom sa zmena v jednom poli neprejaví v druhom. Napríklad,

 let arr1 = ( 1, 2, 3); // copy using spread syntax let arr2 = (… arr1); console.log(arr1); // (1, 2, 3) console.log(arr2); // (1, 2, 3) // append an item to the array arr1.push(4); console.log(arr1); // (1, 2, 3, 4) console.log(arr2); // (1, 2, 3)

Operátor šírenia s objektom

Operátor šírenia môžete použiť aj s literálmi objektov. Napríklad,

 const obj1 = ( x : 1, y : 2 ); const obj2 = ( z : 3 ); // add members obj1 and obj2 to obj3 const obj3 = (… obj1,… obj2); console.log(obj3); // (x: 1, y: 2, z: 3)

Tu sa do operátora šírenia pridávajú vlastnosti aj obj1a .obj2obj3

Zvyšok Parameter

Keď sa ako parameter použije operátor šírenia, je známy ako zvyšok.

Môžete tiež prijať viac argumentov volanie funkcie pomocou parametra rest. Napríklad,

 let func = function(… args) ( console.log(args); ) func(3); // (3) func(4, 5, 6); // (4, 5, 6)

Tu,

  • Keď je func()funkcii odovzdaný jeden argument , zvyšok má iba jeden parameter.
  • Keď sú zadané tri argumenty, parameter zvyšok vezme všetky tri parametre.

Poznámka : Použitím parametra rest sa argumenty odovzdajú ako prvky poľa.

Funkcii pomocou operátora šírenia môžete tiež odovzdať viac argumentov. Napríklad,

 function sum(x, y ,z) ( console.log(x + y + z); ) const num1 = (1, 3, 4, 5); sum(… num1); // 8

Ak pomocou operátora šírenia zadáte viac argumentov, funkcia prevezme požadované argumenty a ostatné ignoruje.

Poznámka : Operátor šírenia bol predstavený v ES6 . Niektoré prehliadače nemusia podporovať použitie syntaxe rozšírenia. Navštívte podporu operátora rozšírenia JavaScriptu a dozviete sa viac.

Zaujímavé články...