JavaScript-de berilýän funksiýalaryň parametrleri
Bizde <test> funksiýasy bolsun, ol
parametr hökmünde başga bir funksiýany kabul edýär we konsola
şol berlen funksiýanyň işiniň netijesini çykarýar:
function test(func) {
console.log( func() );
}
Berlen <func> funksiýasy parametr hökmünde
san kabul edýär we onuň bilen bir zat edýär. Ona
mysal üçin, <3> sanyny bereliň:
function test(func) {
console.log( func(3) );
}
Indi <test> funksiýasyny çagyralyň,
ona parametr hökmünde anonim funksiýa berip.
Bu anonim funksiýa parametr hökmünde
san kabul eder we şol sanyň kwadratyny yzyna gaytarar.
Şunyň netijesinde bizim konstruksiýamyz
<3> sanyň kwadratyny, ýagny <9> sanyny çykarar:
// 9-ny çykarar:
test(
function(num) {
return num * num;
}
);
function test(func) {
console.log(func(3));
}
Kody has owadan bejeriň:
// 9-ny çykarar:
test(function(num) {
return num * num;
});
function test(func) {
console.log(func(3));
}
Meniň <test> funksiýamyň kodyny göçüriň.
Bu funksiýany çagyryň, ona parametr hökmünde
anonim funksiýa beriň, şol funksiýa parametr hökmünde
san kabul etmeli we onuň kubyňy yzyna gaytarmaly.
Kodyňyzy şeýle üýtgediň, berilýän
funksiýa anonim däl, <func> ady bilen
Function Declaration hökmünde kesgitlensin.
Berilýän funksiýany şol bir <func> ady bilen
Function Expression-a üýtgediň.
Indi berilýän funksiýa iki parametr kabul etsin
we olaryň jemini yzyna gaytarsyn.
<test> içinde berilýän funksiýany çagyran wagtyňyzda
berilýän funksiýa <2> sanyny
we <3> sanyny beriň. Netijäni çykaryň.