ЈаваСцрипт Спреад Оператор

У овом упутству ћете научити о ЈаваСцрипт оператору ширења помоћу примера.

Оператор ширења је нови додатак функцијама доступним у верзији ЈаваСцрипт ЕС6 .

Спреад Оператор

Оператор ширења користи се за проширивање или ширење итерабила или низа. На пример,

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

У овом случају, код:

 console.log(… arrValue)

је еквивалентно са:

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

Копирајте низ помоћу Спреад Оператор-а

Синтаксу ширења такође можете користити за копирање ставки у један низ. На пример,

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

Клонирање низа помоћу оператора ширења

У ЈаваСцрипт-у се објекти додељују референцом, а не вредностима. На пример,

 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)

Овде се обе променљиве арр1 и арр2 односе на исти низ. Отуда промена једне променљиве резултира променом обе променљиве.

Међутим, ако желите да копирате низове тако да се не односе на исти низ, можете користити оператор ширења. На овај начин се промена у једном низу не одражава у другом. На пример,

 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)

Спреад Оператор са објектом

Такође можете користити оператор ширења са објектним литералима. На пример,

 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)

Овде су оба obj1и obj2својства додата obj3употреби оператора ширења.

Параметар одмора

Када се оператер ширења користи као параметар, познат је као параметар остатка.

Такође можете прихватити више аргумената у позиву функције помоћу параметра рест. На пример,

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

Ево,

  • Када се func()функцији преда један аргумент , параметар рест узима само један параметар.
  • Када се предају три аргумента, параметар рест узима сва три параметра.

Напомена : Коришћење параметра рест проследиће аргументе као елементе низа.

Такође можете пренети више аргумената функцији помоћу оператора ширења. На пример,

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

Ако проследите више аргумената помоћу оператора ширења, функција узима потребне аргументе, а остатак игнорише.

Напомена : Оператор ширења уведен је у ЕС6 . Неки прегледачи можда не подржавају употребу синтаксе ширења. Посетите подршку за ЈаваСцрипт Спреад Оператор да бисте сазнали више.

Занимљиви Чланци...