JavaScript-de spread operator

ES6-da ... atly ýörite operator peýda boldy, ona spread diýilýär.

Spread operator massiwden öň bolsa, ol massiw aýratyn bahalara bölýär, massiwi funksiýany çagyrmak üçin zerur parametrler toplumyna öwürýär.

Elbetde, bu düşüniksiz ýaly eşidilýär, şonuň üçin geliň ýönekeý mysalda göreliň. Bizde 3 parametr kabul edýän we olaryň jemyny yzyna gaýtarýan funksiýa bolsun:

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

Bizde üç elementden ybarat massiw hem bolsun:

javascriptlet arr = [1, 2, 3];

Bellidir, biz ýöne bu massiwy funksiýanyň parametri hökmünde berip bilmeris, mysal üçin şeýle:

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

Sebäbi bu ýagdaýda massiwyň özi funksiýanyň birinji parametrine düşer, bu parametre bolsa san bermek zerur (we galan parametrlerem hem şeýle).

Elbetde, aşakdaky ýaly etmek mümkin:

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

Emma ýönekeý ýoly hem bar - spread operator ulanyp:

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

Üýtgeýjiniň bolmagy hökman däl - spreadi tögä massiwine hem ulanyp bolýar:

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

Massiw berlen:

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

Şeýle hem funksiýa berlen:

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

Berlen funksiýany ulanyp massiw elementleriniň jemyňy tapyň.