JavaScript-da sonni parametr sifatida uzatish
Keling, endi berilgan funktsiya bilan biror ish bajaradigan
sonni test ichida qattiq saqlamaymiz,
balki birinchi parametr sifatida uzatamiz:
function test(num, func) { // birinchi parametr sifatida son keladi
console.log(func(num));
}
Funktsiyamizdan foydalanamiz:
function test(num, func) {
console.log(func(num));
}
// 4 ni chiqaradi:
test(2, function(num) {
return num * num;
});
Konstruksiyamizning qulayligi: bizda
bitta test funktsiyasi bor, parametr sifatida
son qabul qiladi. Lekin son bilan nima bo'lishi
test funktsiyasida qattiq kodlangan emas.
Biz, masalan, test funktsiyasining
ikkinchi parametri sifatida kvadratga ko'taradigan
funktsiyani uzatishimiz mumkin, yoki, masalan, kubga ko'taradigan funktsiyani uzatishimiz mumkin:
function test(num, func) {
console.log(func(num));
}
// Sonning kvadratini topamiz:
test(2, function(num) {
return num * num; // kvadratni qaytaradi
});
// Sonning kubini topamiz:
test(2, function(num) {
return num * num * num; // kubni qaytaradi
});
test funktsiyasi birinchi parametr sifatida
son qabul qilsin, ikkinchi va uchinchi parametr sifatida esa
shuningdek parametr sifatida son qabul qiluvchi funktsiyalar qabul qilsin.
test funktsiyasi berilgan funktsiyalarning
natijalari yig'indisini qaytarsin:
function test(num, func1, func2) {
return func1(num) + func2(num);
}
test funktsiyasini chaqing, birinchi parametr sifatida
3 sonini uzating, ikkinchi parametr sifatida
sonni kvadratga ko'taruvchi funktsiyani, uchinchi parametr sifatida esa
sonni kubga ko'taruvchi funktsiyani uzating. Natijani
konsolga chiqaring.