In questo tutorial imparerai a conoscere i parametri predefiniti di JavaScript con l'aiuto di esempi.
Il concetto di parametri predefiniti è una nuova funzionalità introdotta nella versione ES6 di JavaScript. Questo ci permette di dare valori di default ai parametri della funzione. Facciamo un esempio,
function sum(x = 3, y = 5) ( // return sum return x + y; ) console.log(sum(5, 15)); // 20 console.log(sum(7)); // 12 console.log(sum()); // 8
Nell'esempio precedente, il valore predefinito di xè 3 e il valore predefinito di yè 5 .
sum(5, 15)- Quando vengono passati entrambi gli argomenti,xprende 5 e neyprende 15 .sum(7)- Quando 7 viene passato allasum()funzione,xprende 7 eyassume il valore predefinito 5 .sum()- Quando nessun argomento viene passato alla funzione sum () ,xassume il valore predefinito 3 eyil valore predefinito 5 .
Come funzionano gli argomenti predefiniti in JavaScript
Utilizzo di espressioni come valori predefiniti
È anche possibile fornire espressioni come valori predefiniti.
Esempio 1: passaggio di parametri come valori predefiniti
function sum(x = 1, y = x, z = x + y) ( console.log( x + y + z ); ) sum(); // 4
Nel programma sopra,
- Il valore predefinito di
xè 1 - Il valore predefinito di
yè impostato suxparametro - Il valore predefinito di
zè la somma dixey
Se fai riferimento al parametro che non è stato ancora inizializzato, otterrai un errore. Per esempio,
function sum( x = y, y = 1 ) ( console.log( x + y); ) sum(); Produzione
ReferenceError: impossibile accedere a "y" prima dell'inizializzazione
Esempio 2: passaggio del valore della funzione come valore predefinito
// using a function in default value expression const sum = () => 15; const calculate = function( x, y = x * sum() ) ( return x + y; ) const result = calculate(10); console.log(result); // 160
Nel programma sopra,
- 10 viene passato alla
calculate()funzione. xdiventa10, eydiventa150(restituisce la funzione somma15).- Il risultato sarà
160.
Passaggio di valore indefinito
In JavaScript, quando si passa undefineda una funzione parametro predefinita, la funzione assume il valore predefinito. Per esempio,
function test(x = 1) ( console.log(x); ) // passing undefined // takes default value 1 test(undefined); // 1








