CodeGym /Corsi /Frontend SELF IT /Parametri delle funzioni

Parametri delle funzioni

Frontend SELF IT
Livello 35 , Lezione 3
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
    
  
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION