108 of 264 menu

Метод reduce

Метод reduce массиви бир қийматга йиғади (редуцира қилади). Масалан, ушбу метод ёрдамида массиви элементларининг йиғиндисини осонгина топиш мумкин (яъни массив бир қийматга - элементларининг йиғиндисига айланади).

Метод reduce биринчи параметр сифатида функцияни қабул қилади, бу функция массивинг ҳар бир элементи учун биринчидан бошлаб кетма-кет бажарилади. Бу функцияга 4 параметр бериш мумкин. Агар бу параметрлар мавжуд бўлса (улар мажбурий эмас), у ҳолда биринчисига автоматик равишда араловчи натижа тушади, иккинчисига массивинг элементи тушади, учинчисига - унинг массивидаги номери (индекс), тўртинчисига эса - массивининг ўзи.

Араловчи натижа - бу ўзгармас қиймат бўлиб, унда reduce метожи массивинг барча элементларини айлантириб чиққанда қайтарадиган қиймат тўпланади. Масалан, унга кетма-кет равишда массиви элементларининг йиғиндисини топиш мумкин: аввал биринчи элементини қўйиш, кейинги айланиш даврасида энди биринчи ва иккинчи элементларининг йиғиндисини, кейинги даврада - биринчи, иккинчи ва учинчининг йиғиндисини. Ва ҳоказо, массив тугагунча. reduce қабул қиладиган функция, араловчи натижанинг янги қийматини қайтариши керак.

reduce метожининг иккинчи параметри сифатида араловчи натижанинг бошланғич қиймати кўрсатилади. Агар уни кўрсатилмаса, у ҳолда у биринчи элементининг қийматига тенг бўлади, ва элементларини ишлов бериш иккинчи элементдан бошланади.

Синтаксис

массив.reduce(function(араловчи натижа, элемент, индекс, массив) { return янги араловчи натижа; }, бошланғич қиймат);

Мисол

Массиви элементларининг йиғиндисини топамиз:

let arr = [1, 2, 3, 4, 5, 6]; let res = arr.reduce(function(sum, elem) { return sum + elem; }, 0); console.log(res);

Кодни бажариш натижаси:

21

Мисол

Келинг, массивинг барча мусбат сонларининг йиғиндисини топамиз:

let arr = [1, -2, -3, 4, 5, -6]; let res = arr.reduce(function(sum, elem) { if (elem >= 0) { return sum + elem; } else { return sum; } }, 0); console.log(res);

Кодни бажариш натижаси:

10

Ҳам қаранг

  • метод reduceRight,
    ухшаш амални бажаради
  • метод filter,
    у массиви элементларини фильтрлаш имконини беради
  • методлар map ва forEach,
    улар массивинг ҳар бир элементига функцияни қўллаш имконини беради
  • методлар some ва every,
    массивни текширишни бажаради
Ўзбек
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш