Chiamata sequenziale di funzioni in JavaScript
Il risultato di una funzione può essere
passato come parametro a un'altra.
Nell'esempio seguente, prima troviamo
il quadrato del numero 2,
e poi il quadrato del risultato:
function func(num) {
return num ** 2;
}
let res = func(func(2));
console.log(res); // visualizzerà 16
Le funzioni, naturalmente, non devono necessariamente essere uguali. Supponiamo, ad esempio, che abbiamo una funzione che restituisce il quadrato di un numero, e una funzione che restituisce il cubo di un numero:
function square(num) {
return num ** 2;
}
function cube(num) {
return num ** 3;
}
Usiamo queste funzioni per elevare il numero
2 al quadrato, e poi elevare il risultato di questa
operazione al cubo:
let res = cube(square(2));
console.log(res);
Supponiamo ora di avere una funzione che restituisce il quadrato di un numero, e una funzione che trova la somma di due numeri:
function square(num) {
return num ** 2;
}
function sum(num1, num2) {
return num1 + num2;
}
Troviamo con l'aiuto di queste funzioni la somma del quadrato
del numero 2 e del quadrato del numero 3:
let res = sum(square(2), square(3));
console.log(res);
Supponiamo di avere una funzione che restituisce la radice quadrata di un numero, e una funzione che arrotonda un decimale a tre cifre nella parte frazionaria:
function sqrt(num) {
return Math.sqrt(num);
}
function round(num) {
return num.toFixed(3);
}
Con l'aiuto di queste funzioni, trova la radice quadrata
del numero 2 e arrotondala
a tre cifre nella parte frazionaria.
Supponiamo di avere una funzione che restituisce la radice quadrata di un numero, e una funzione che restituisce la somma di tre numeri:
function sqrt(num) {
return Math.sqrt(num);
}
function sum(num1, num2, num3) {
return num1 + num2 + num3;
}
Con l'aiuto di queste funzioni, trova la somma delle radici
dei numeri 2, 3 e 4 e registrala
nella variabile res.
Supponiamo di avere una funzione che arrotonda un decimale a tre cifre nella parte frazionaria:
function round(num) {
return num.toFixed(3);
}
Con l'aiuto di questa funzione, modifica il problema precedente
in modo che nella variabile res
venga registrato un decimale, arrotondato a 3
cifre nella parte frazionaria.