Параметрҳои функсияи баргардонидашуда дар JavaScript
Ба фарохонӣҳои функсияҳое, ки мо омӯхтем, метавон параметрҳо фиристод. Дар мисоли зер функсияи дарунӣ сатрро ҳамчун параметр интизор аст ва онро дар консол чоп мекунад:
function func() {
return function(str) {
return str;
};
}
Функсияи дарунӣ ба қавси дуюм дар вақти фарохонӣ мувофиқат мекунад, яъне ба ин қавси дуюм сатрҳои дилхоҳро мефиристем:
function func() {
return function(str) {
return str;
};
}
console.log( func()('!') ); // '!'-ро чоп мекунад
Биёед ба тавре созем, ки ҳам функсияи аввал параметр қабул кунад, ҳам функсияи дуюм. Ва натиҷаи фарохонӣро ҷамъи ин параметрҳо созем:
function func(num1) {
return function(num2) {
return num1 + num2;
};
}
console.log( func(1)(2) ); // 3-ро чоп мекунад
Функсияи func-ро созед, ки ҳангоми фарохонӣ чунин: func(2)(3)(4), ҷамъи ададҳои фиристодашударо ҳамчун параметр баргардонад.
Функсияи func-ро созед, ки ҳангоми фарохонӣ чунин: func(2)(3)(4)(5)(), массивҳои ададҳои фиристодашударо ҳамчун параметр баргардонад.