116 lines
3.1 KiB
JavaScript
116 lines
3.1 KiB
JavaScript
/**
|
|
* ===========================================
|
|
* === 1. Dichiarazione e Chiamata ===
|
|
* Una funzione è un blocco di codice riutilizzabile.
|
|
* Si dichiara con la parola chiave 'function'.
|
|
* Il codice dentro la funzione non viene eseguito finché non la "chiami".
|
|
*/
|
|
|
|
// Esempio:
|
|
function saluta() {
|
|
console.log("Ciao mondo!");
|
|
}
|
|
// Per eseguirla:
|
|
saluta();
|
|
|
|
// TODO: Dichiara una funzione chiamata 'stampaBenvenuto' che stampi "Benvenuto al corso!".
|
|
// Poi chiama la funzione.
|
|
|
|
// OUTPUT ATTESO:
|
|
// Benvenuto al corso!
|
|
|
|
|
|
/**
|
|
* ===========================================
|
|
* === 2. I Parametri ===
|
|
* Le funzioni possono ricevere dati in ingresso chiamati "parametri".
|
|
* I parametri agiscono come variabili locali dentro la funzione.
|
|
*/
|
|
|
|
function salutaPersona(nome) {
|
|
console.log("Ciao " + nome);
|
|
}
|
|
|
|
// TODO: Chiama la funzione 'salutaPersona' due volte:
|
|
// 1. Passando il nome "Mario".
|
|
// 2. Passando il nome "Luigi".
|
|
|
|
// OUTPUT ATTESO:
|
|
// Ciao Mario
|
|
// Ciao Luigi
|
|
|
|
|
|
/**
|
|
* ===========================================
|
|
* === 3. Parametri Multipli ===
|
|
* Puoi passare più parametri separandoli da virgola.
|
|
* L'ordine è importante!
|
|
*/
|
|
|
|
// TODO: Scrivi una funzione 'descriviPersona' che accetta due parametri: 'nome' e 'età'.
|
|
// La funzione deve stampare: nome + " ha " + età + " anni."
|
|
// Poi chiamala con "Anna" e 25.
|
|
|
|
// OUTPUT ATTESO:
|
|
// Anna ha 25 anni.
|
|
|
|
|
|
/**
|
|
* ===========================================
|
|
* === 4. Il Valore di Ritorno (Return) ===
|
|
* Una funzione può "restituire" un risultato al codice che l'ha chiamata.
|
|
* Si usa la parola chiave 'return'.
|
|
*/
|
|
|
|
function somma(a, b) {
|
|
let risultato = a + b;
|
|
return risultato;
|
|
}
|
|
|
|
let x = somma(5, 3); // x ora vale 8. Nulla viene stampato qui.
|
|
console.log("Il risultato è: " + x);
|
|
|
|
// TODO: Scrivi una funzione 'moltiplica' che accetta due numeri e RESTITUISCE (return) il loro prodotto.
|
|
// Poi salva il risultato di moltiplica(4, 5) in una variabile e stampalo.
|
|
|
|
// OUTPUT ATTESO:
|
|
// 20
|
|
|
|
|
|
/**
|
|
* ===========================================
|
|
* === 5. Usare le Funzioni nella Logica ===
|
|
* Possiamo usare il valore restituito da una funzione direttamente dentro un 'if'.
|
|
*/
|
|
|
|
// TODO: Scrivi una funzione 'èMaggiorenne' che accetta un numero (età).
|
|
// Se età >= 18 restituisce true, altrimenti false.
|
|
// Poi scrivi un if che usa questa funzione per stampare "Sei maggiorenne" o "Sei minorenne".
|
|
|
|
// OUTPUT ATTESO (provando con 20):
|
|
// Sei maggiorenne
|
|
|
|
|
|
/**
|
|
* ===========================================
|
|
* === 6. Scope (Visibilità) ===
|
|
* Le variabili definite dentro una funzione (con let) NON esistono fuori di essa.
|
|
* Stessa cosa vale per i parametri, che sono visibili SOLO dentro la funzione.
|
|
* È chiamato "scope" (ambito) della variabile.
|
|
*/
|
|
|
|
function testScope(variabileLocale) {
|
|
let segreto = "Codice123" + variabileLocale;
|
|
return segreto;
|
|
}
|
|
|
|
// TODO: Prova a decommentare la riga sotto e osserva l'errore.
|
|
// console.log(segreto);
|
|
// console.log(variabileLocale);
|
|
|
|
// TODO: Correggi l'errore: crea una variabile 'codiceEsterno' e assegnale il risultato della chiamata a 'testScope("456")'.
|
|
// Poi stampa 'codiceEsterno'.
|
|
|
|
// OUTPUT ATTESO:
|
|
// Codice123456
|