sabato 4 ottobre 2025

Corso di JavaScript & Programmazione Web: 4 – Funzioni

4 – Funzioni

1. Definizione e richiamo di funzioni

Una funzione è un blocco di codice riutilizzabile che esegue un’operazione specifica.
Si definisce con la parola chiave function, seguita da un nome, eventuali parametri tra parentesi tonde e il corpo tra parentesi graffe.

📌 Sintassi base

function saluta() { console.log("Ciao mondo!"); } // Richiamo saluta();

➡️ Output:

Ciao mondo!

2. Parametri e valori di ritorno

Le funzioni possono ricevere parametri (input) e restituire un valore di ritorno (output) con la parola chiave return.

📌 Esempio

function somma(a, b) { return a + b; } let risultato = somma(5, 7); console.log(risultato);

➡️ Output:

12

3. Funzioni freccia (()=>{})

Introdotte in ES6, le funzioni freccia sono una sintassi più compatta, spesso usata con funzioni anonime o callback.

📌 Esempi

// Funzione classica function quadrato(x) { return x * x; } // Funzione freccia equivalente const quadratoArrow = (x) => x * x; console.log(quadrato(4)); // 16 console.log(quadratoArrow(4)); // 16

👉 Se il corpo contiene una sola istruzione, le graffe e return possono essere omessi.
👉 Attenzione: le funzioni freccia non hanno il proprio this, quindi si comportano diversamente in contesti di oggetti.


4. Scope delle variabili

Lo scope definisce la visibilità delle variabili:

  • Globale: dichiarata fuori da qualsiasi funzione → visibile ovunque.

  • Locale: dichiarata dentro una funzione → visibile solo lì.

  • Block scope (let, const): visibile solo all’interno delle parentesi graffe in cui è definita.

📌 Esempio

let globale = "Sono globale"; function esempioScope() { let locale = "Sono locale"; console.log(globale); // ✅ accessibile console.log(locale); // ✅ accessibile } esempioScope(); console.log(globale); // ✅ accessibile // console.log(locale); ❌ errore: locale non definita

5. Esercizio pratico – Funzione palindroma

Un palindromo è una parola che si legge uguale in avanti e indietro (es. "anna", "radar").

📌 Soluzione classica

function isPalindromo(parola) { let parolaInvertita = parola.split("").reverse().join(""); return parola === parolaInvertita; } // Test console.log(isPalindromo("anna")); // true console.log(isPalindromo("cane")); // false

📌 Soluzione con funzione freccia

const isPalindromo = (parola) => { return parola === parola.split("").reverse().join(""); }; console.log(isPalindromo("radar")); // true

6. Sintesi concettuale

  • Le funzioni permettono di organizzare e riutilizzare il codice.

  • Possono avere parametri in ingresso e valori di ritorno in uscita.

  • Le funzioni freccia rendono la sintassi più compatta, ma hanno differenze con this.

  • Lo scope regola la visibilità delle variabili.

  • Applicazione pratica: controllo di palindromi.

Nessun commento:

Posta un commento

Corso Fondamenti di Informatica e Reti: 6 Reti di computer e Internet

Reti di computer e Internet Introduzione Prova a pensare alla vita quotidiana senza reti informatiche: niente messaggi WhatsApp, niente m...