English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JavaScript Reference Manual
A function can have one or more parameters, which will be provided by the calling code and can be used within the function.
FunctionFunction parameters and actual argumentsParametersname is the name listed in the function definition.
FunctionActual argumentsare the actual values passed to the function (and received by the function)Valore.
When defining a function to accept input values at runtime, you can specify parameters.
Function parameters are listed in the parentheses () in the function definition.
// Define function function greet(name) { document.write("Hello, " + name); } // Call the greet function with "Seagull" as a parameter greet("Seagull");Testa a vedere‹/›
You can define any number of parameters as needed.
// Define function function add(num1, num2, num3) { var total = num1 + num2 + num3; document.write(total); } // Chiamata della funzione add(5, 20, 10); // Output: 35 add(-5, 8, 7); // Output: 10Testa a vedere‹/›
Ma, per ogni parametro specificato, è necessario passare il parametro corrispondente alla funzione durante la chiamata della funzione, altrimenti il suo valore diventerà incerto.
// Definizione della funzione function showFullname(fName, lName) { document.write(fName + " " + lName); } // Chiamata della funzione showFullname("Kavy", "Mark"); // Output: Kavy Mark showFullname("John"); // Output: John undefinedTesta a vedere‹/›
senonpassatoValoreonon definitoalloraParametri di default delle funzioniÈ possibile inizializzare i parametri nominati con valori di default.
Questo significa che se non vengono forniti alcun parametro durante la chiamata della funzione per utilizzare queste funzioni, verranno utilizzati questi valori di default.
function myFunc(a, b = 20) { // Se non viene passato o non definito il parametro b, b è 20 return a + b; } myFunc(10, 5); // restituisce 15 myFunc(10); // restituisce 30Testa a vedere‹/›
Tutti i funzioni in JavaScript possono utilizzare l'oggetto arguments per default. L'oggetto dei parametri include il valore di ogni parametro.
L'oggetto arguments è un array simile a un oggetto. Puoi accedere ai suoi valori utilizzando indici simili a quelli degli array.
Esempio seguente restituisce il numero massimo tra i parametri passati:
getMax(9, 15, 61, 3); function getMax() { let max = 0; for (let i = 0; i < arguments.length; i++) { if (arguments[i] > max) { max = arguments[i]; } } return max; }Testa a vedere‹/›
Esempio seguente restituisce la somma di tutti i parametri passati:
getSum(9, 15, 61, 3); function getSum() { let sum = 0; for (let i in arguments) { sum += arguments[i]; } return sum; }Testa a vedere‹/›
Anche se la funzione non contiene alcun parametro, l'oggetto arguments è valido.
L'oggetto arguments è simile a un array di oggetti, ma non supporta i metodi dell'array.
Parametro resetLa sintassi permette di passare un numero variabile di parametri a una funzione come un array.
Questo è particolarmente utile quando si desidera passare parametri a una funzione ma non si conosce il numero di parametri necessari.
Specificare i parametri rest con l'operatore rest (...), ossia tre punti, davanti al parametro nome.
function sum(...arr) { return arr.reduce((previous, current) => { return previous + current; }); } sum(1, 2); // Restituisce 3 sum(1, 2, 3, 4); // Restituisce 10 sum(1, 2, 3, 4, 5, 6); // Restituisce 21Testa a vedere‹/›
Nella chiamata della funzione, i parametri sono i parametri della funzione.
I parametri JavaScript sono passati daValorePassaggio: la funzione conosce solo il valore, non la posizione del parametro.
Se la funzione modifica il valore di un parametro, non modifica il valore originale del parametro.
Le modifiche ai parametri sono invisibili esternamente alla funzione (reflettute).
In JavaScript, i riferimenti agli oggetti sono valori.
Dunque, l'oggetto si comporta come se fosse passatoRiferimentoPassaggio identico:
Se la funzione modifica le proprietà dell'oggetto, modifica il valore originale.
Le modifiche alle proprietà degli oggetti sono visibili esternamente alla funzione (reflettute).