JavaScriptда сон параметр сифатида ўтказиш
Энди бирор иш бажарадиган функция ичида қаттиқ сақланмаган сонни, ўрнига биринчи параметр сифатида ўтказамиз:
function test(num, func) { // биринчи параметр сифатида сон келади
console.log(func(num));
}
Функциямиздан фойдаланамиз:
function test(num, func) {
console.log(func(num));
}
// 4 ни чиқаради:
test(2, function(num) {
return num * num;
});
Бизнинг конструкциямизнинг қулайлиги: бизда
сонни параметр сифатида қабул қиладиган
бир test функцияси мавжуд. Лекин сон
билан нима бўлиши test функцияси ичида
қаттиқ кодланмаган.
Биз, масалан, test функциясининг иккинчи
параметри сифатида квадратга кўтарадиган функцияни
ўтказа оламиз, ёки, масалан, кубга кўтарадиганни:
function test(num, func) {
console.log(func(num));
}
// Соннинг квадратини топамиз:
test(2, function(num) {
return num * num; // квадратни қайтаради
});
// Соннинг кубини топамиз:
test(2, function(num) {
return num * num * num; // кубни қайтаради
});
test функцияси биринчи параметр сифатида
сонни қабул қилсин, иккинчи ва учинчи параметрлар
сифатида эса шунингдек параметр сифатида сонларни
қабул қиладиган функциялар бўлсин. test
функцияси ўтказилган функциялар натижалари
йиғиндисини қайтарсин:
function test(num, func1, func2) {
return func1(num) + func2(num);
}
test функциясини чақиринг, биринчи параметр
сифатида 3 сонини ўтказган ҳолингизда, иккинчи
параметр сифатида сонни квадратга кўтарадиган функцияни,
учинчиси сифатида эса сонни кубга кўтарадиган функцияни
ўтказасиз. Натижани консолга чиқаринг.