JavaScript-ում փոխանցվող ֆունկցիաների պարամետրերը
Ենթադրենք ունենք test ֆունկցիա, որն
որպես պարամետր ընդունում է մեկ այլ ֆունկցիա և կոնսոլում
արտածում է այդ փոխանցված ֆունկցիայի աշխատանքի արդյունքը.
function test(func) {
console.log( func() );
}
Ենթադրենք փոխանցված func ֆունկցիան պարամետրով
ընդունում է թիվ և ինչ-որ բան անում դրա հետ: Փոխանցենք
դրան, օրինակ, 3 թիվը.
function test(func) {
console.log( func(3) );
}
Այժմ եկեք կանչենք test ֆունկցիան,
նրան որպես պարամետր փոխանցելով անանուն ֆունկցիա:
Այս անանուն ֆունկցիան պարամետրով կընդունի
թիվ և կվերադարձնի այդ թվի քառակուսին:
Այս ամենի արդյունքում մեր կոնստրուկցիան
կարտածի 3 թվի քառակուսին, այսինքն 9.
// Կարտածի 9.
test(
function(num) {
return num * num;
}
);
function test(func) {
console.log(func(3));
}
Եկեք ավելի նրբագեղ ձևակերպենք կոդը.
// Կարտածի 9.
test(function(num) {
return num * num;
});
function test(func) {
console.log(func(3));
}
Պատճենեք իմ test ֆունկցիայի կոդը:
Կանչեք այս ֆունկցիան, նրան որպես պարամետր փոխանցելով
անանուն ֆունկցիա, որն պարամետրով կընդունի
թիվ և կվերադարձնի դրա խորանարդը:
Փոխակերպեք ձեր կոդն այնպես, որ փոխանցվող
ֆունկցիան լինի ոչ թե անանուն, այլ սահմանված
որպես Function Declaration func անունով:
Փոխակերպեք փոխանցվող ֆունկցիան Function
Expression-ի նույն func անունով:
Ենթադրենք փոխանցվող ֆունկցիան այժմ ընդունում է
երկու պարամետր և վերադարձնում է դրանց գումարը:
test-ի ներսում փոխանցվող ֆունկցիան կանչելիս
փոխանցվող ֆունկցիային փոխանցեք 2 թիվը
և 3 թիվը: Արտածեք արդյունքը: