Passare un numero come parametro in JavaScript
Ora non memorizziamo rigidamente all'interno di
test il numero su cui agisce la funzione passata,
ma passiamolo come primo parametro:
function test(num, func) { // il numero arriva come primo parametro
console.log(func(num));
}
Usiamo la nostra funzione:
function test(num, func) {
console.log(func(num));
}
// Visualizzerà 4:
test(2, function(num) {
return num * num;
});
Il vantaggio della nostra struttura: abbiamo
una funzione test che accetta un numero
come parametro. Ma ciò che accade al numero
non è rigidamente codificato nella funzione test.
Possiamo, ad esempio, passare come secondo parametro della funzione
test una funzione che eleva al quadrato,
oppure, ad esempio, una che eleva al cubo:
function test(num, func) {
console.log(func(num));
}
// Troviamo il quadrato del numero:
test(2, function(num) {
return num * num; // restituisce il quadrato
});
// Troviamo il cubo del numero:
test(2, function(num) {
return num * num * num; // restituisce il cubo
});
Lascia che la funzione test accetti come primo parametro
un numero, e come secondo e terzo parametro
funzioni che accettano anch'esse numeri come parametro.
Lascia che la funzione test restituisca la somma
dei risultati delle funzioni passate:
function test(num, func1, func2) {
return func1(num) + func2(num);
}
Chiama la funzione test, passando come primo parametro
il numero 3, come secondo parametro
la funzione che eleva il numero al quadrato, e come terzo
- la funzione che eleva il numero al cubo. Visualizza
il risultato in console.