АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
⊗jsPmFNAFA 258 of 505 menu

Ужыванне стрэлачных функцый у JavaScript

Асаблівую перавагу стрэлачныя функцыі маюць у якасці зваротных выклікаў (коллбэкаў). Давайце паглядзім на прыкладзе, на колькі спрашчаецца код у такім выпадку. Хай для прыкладу ў нас ёсць наступная функцыя filter:

function filter(arr, callback) { let res = []; for (let elem of arr) { if ( callback(elem) === true ) { res.push(elem); } } return res; }

Выклічам гэтую функцыю, перадаўшы ёй зваротны выклік:

let result = filter([1, 2, 3, 4, 5], function(elem) { if (elem % 2 === 0) { return true; } else { return false; } });

Давайце зараз спросцім нашу функцыю. Для пачатку давайце пазбавімся ад канструкцыі if і напішам умову проста праз аператар ===:

let result = filter([1, 2, 3, 4, 5], function(elem) { return elem % 2 == 0; });

Замянім зараз звычайную функцыю на стрэлачную:

let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);

Дана наступная функцыя з зваротным выклікам:

let result = filter([1, 2, 3, 4, 5], function(elem) { if (elem > 0) { return true; } else { return false; } });

Спрасціце зваротны выклік праз стрэлачную функцыю.

byenru