CodeGym/Corsi/Frontend SELF IT/Parametri delle funzioni

Parametri delle funzioni

Disponibile

4.1 Parametri delle funzioni

I parametri delle funzioni in JavaScript permettono di passare valori alle funzioni per elaborarle. Questo rende le funzioni più flessibili e adattabili. In questo argomento esamineremo gli aspetti principali del lavoro con i parametri delle funzioni in JavaScript, escludendo i parametri di default e i parametri rest.

I parametri vengono indicati tra parentesi tonde dopo il nome della funzione. Quando la funzione viene chiamata, i valori di questi parametri vengono passati nelle corrispondenti variabili all'interno della funzione.

Esempio:

Nella funzione greet() sono definiti due parametri: name e age. Quando la funzione viene chiamata, i valori Alice e 30 vengono passati a questi parametri.

JavaScript
function greet(name, age) {
  return `Hello, ${name}! You are ${age} years old.`;
}
console.log(greet('Alice', 30)); // "Hello, Alice! You are 30 years old."

Gestione dei parametri non definiti

Se un parametro non viene passato quando si chiama la funzione, il suo valore sarà undefined. Questo può causare errori se con questo parametro si effettuano operazioni che non supportano undefined.

Esempio:

Nella funzione greet() si controlla se il parametro name è stato passato. Se no, viene utilizzata la stringa Guest.

JavaScript
function greet(name) {
  if (name === undefined) {
    return 'Hello, Guest!';
  }
  return `Hello, ${name}!`;
}

console.log(greet()); // "Hello, Guest!"
console.log(greet('Bob')); // "Hello, Bob!"

4.2 Parametri di default

I parametri di default permettono di impostare valori che verranno utilizzati se un argomento non viene passato quando si chiama la funzione o viene passato come undefined. Questo è particolarmente utile per creare funzioni con parametri opzionali.

Sintassi:

function name (arg1 = value1, arg2 = value2) {
  // function body
}

Esempio 1: Funzione semplice con parametri di default

In questo esempio, la funzione greet() ha un parametro name con il valore di default Guest. Se l'argomento non viene passato, verrà utilizzato il valore di default.

JavaScript
function greet(name = 'Guest') {
  return `Hello, ${name}!`;
}

console.log(greet('Alice')); // Output: Hello, Alice!
console.log(greet());        // Output: Hello, Guest!

Esempio 2: Parametri di default con espressioni

In questo esempio, il parametro tax di default viene calcolato come il 20% di price se non è stato passato un altro argomento.

JavaScript
function calculatePrice(price, tax = price * 0.2) {
  return price + tax;
}

console.log(calculatePrice(100));  // Output: 120
console.log(calculatePrice(100, 15)); // Output: 115

Esempio 3: Parametri di default che dipendono da altri parametri

In questo esempio, i parametri di default permettono di creare un utente con ruoli e stati predefiniti.

JavaScript
function createUser(name, role = 'user', isActive = true) {
  return { name, role, isActive };
}

console.log(createUser('Alice')); // Output: { name: 'Alice', role: 'user', isActive: true }
console.log(createUser('Bob', 'admin')); // Output: { name: 'Bob', role: 'admin', isActive: true }
console.log(createUser('Charlie', 'moderator', false)); // Output: { name: 'Charlie', role: 'moderator', isActive: false }

4.3 Parametri rest

I parametri rest permettono a una funzione di accettare un numero qualsiasi di argomenti e di raccoglierli in un array. Questo è utile per creare funzioni che possono lavorare con un numero arbitrario di argomenti.

Sintassi:

function name (arg1, arg2, ...argArray) {
  // function body
}

Esempio 1: Somma di tutti gli argomenti passati

In questo esempio, la funzione sumAll() utilizza i parametri rest per sommare tutti gli argomenti passati.

JavaScript
function sumAll(...numbers) {
  return numbers.reduce((sum, num) => sum + num, 0);
}

console.log(sumAll(1, 2, 3));       // Output: 6
console.log(sumAll(4, 5, 6, 7, 8)); // Output: 30

Esempio 2: Funzione con parametri fissi e rest

In questo esempio, la funzione showItems() accetta un parametro fisso firstItem e un numero indefinito di altri argomenti raccolti in un array otherItems.

JavaScript
function showItems(firstItem, ...otherItems) {
  console.log(`Primo elemento: ${firstItem}`);
  console.log(`Altri elementi: ${otherItems.join(', ')}`);
}

showItems('apple', 'banana', 'cherry', 'date');

// Output:
// Primo elemento: apple
// Altri elementi: banana, cherry, date

Esempio 3: Funzione con argomenti dinamici

In questo esempio, la funzione createMessage() accetta il primo argomento messageType e raccoglie tutti gli altri parametri in un array messages per creare un messaggio.

JavaScript
function createMessage(messageType, ...messages) {
  return `[${messageType.toUpperCase()}]: ${messages.join(' ')}`;
}

console.log(createMessage('info', 'This', 'is', 'an', 'informational', 'message'));
// Output: [INFO]: This is an informational message

console.log(createMessage('error', 'An', 'error', 'occurred'));
// Output: [ERROR]: An error occurred
1
Compito
Frontend SELF IT,  livello 35lezione 3
Bloccato
Prezzo con tassa
Prezzo con tassa
1
Compito
Frontend SELF IT,  livello 35lezione 3
Bloccato
Primo e gli altri
Primo e gli altri
Commenti
  • Popolari
  • Nuovi
  • Vecchi
Devi avere effettuato l'accesso per lasciare un commento
Questa pagina non ha ancora commenti