JavaScript izplatīšanas operators

Šajā apmācībā jūs uzzināsit par JavaScript izplatīšanas operatoru, izmantojot piemērus.

Izplatīšanas operators ir jauns papildinājums funkcijām, kas pieejamas JavaScript ES6 versijā.

Spread Operator

Izplatīšanas operators tiek izmantots, lai paplašinātu vai izplatītu iterējamu vai masīvu. Piemēram,

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

Šajā gadījumā kods:

 console.log(… arrValue)

ir ekvivalents:

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

Kopēt masīvu, izmantojot Spread Operator

Varat arī izmantot izplatīšanas sintaksi, lai kopētu vienumus vienā masīvā. Piemēram,

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

Klonu masīvs, izmantojot Spread Operator

JavaScript objektus piešķir pēc atsauces, nevis pēc vērtībām. Piemēram,

 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)

Šeit abi mainīgie arr1 un arr2 attiecas uz vienu un to pašu masīvu. Tādējādi izmaiņas vienā mainīgajā rada pārmaiņas abos mainīgajos.

Tomēr, ja vēlaties kopēt masīvus tā, lai tie neattiecas uz to pašu masīvu, varat izmantot izplatīšanas operatoru. Tādā veidā viena masīva izmaiņas netiek atspoguļotas otrā. Piemēram,

 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)

Izplatiet operatoru ar objektu

Izkliedes operatoru var izmantot arī ar objektu literāliem. Piemēram,

 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)

Šeit abas obj1un obj2īpašības tiek pievienotas obj3izplatīšanas operatora izmantošanai.

Atpūtas parametrs

Ja izplatīšanas operatoru izmanto kā parametru, to sauc par pārējo parametru.

Funkcijas izsaukumā varat arī pieņemt vairākus argumentus, izmantojot pārējo parametru. Piemēram,

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

Šeit,

  • Kad func()funkcijai tiek nodots viens arguments , pārējais parametrs aizņem tikai vienu parametru.
  • Kad tiek nodoti trīs argumenti, pārējais parametrs ņem visus trīs parametrus.

Piezīme : Pārējā parametra izmantošana nodos argumentus kā masīva elementus.

Varat arī pārsūtīt vairākus argumentus funkcijai, izmantojot izplatīšanas operatoru. Piemēram,

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

Ja jūs nododat vairākus argumentus, izmantojot izplatīšanas operatoru, funkcija ņem nepieciešamos argumentus un pārējos ignorē.

Piezīme : Spread operators tika ieviests ES6 . Dažas pārlūkprogrammas var neatbalstīt izplatītās sintakses izmantošanu. Apmeklējiet JavaScript Spread Operator atbalstu, lai uzzinātu vairāk.

Interesanti raksti...