Return anticipati e guard clause
Utilizzi return anticipati e guard clause per semplificare le condizioni, ridurre l'annidamento e rendere chiaro il percorso principale.
Return anticipati e guard clause è una lezione JavaScript Academy gratuita su CoddyKit. Questa è la lezione 3 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento JavaScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso JavaScript Academy include 3 lezioni in totale.
Introduzione
Obiettivo: scrivere funzioni più chiare restituendo subito un risultato per gli input non validi, così il percorso principale resta breve.
- Restituzione anticipata
- Guard clause
- Meno annidamento

Senza guard clause
L'annidamento sposta il lavoro principale all'interno di un if, che può diventare difficile da leggere.
// Nested style without guard
function welcome(name) {
if (name) {
const message = "Hello, " + name + "!";
console.log(message);
} else {
console.log("Name required");
}
}
welcome("Ayla");
welcome("");

Refactoring con guard clause
Gestisca prima l'input non valido, poi scriva il percorso principale con meno livelli di rientro.
// Guard clause: return early for bad input
function welcomeSafe(name) {
if (!name) {
console.log("Name required");
return;
}
const message = "Hello, " + name + "!";
console.log(message);
}
welcomeSafe("Ayla");
welcomeSafe("");

Più guard clause
Usi una piccola guard clause per ogni regola. Ogni restituzione anticipata elimina la necessità di un annidamento profondo.
// Multiple guard clauses keep each rule small
function divide(a, b) {
if (typeof a !== "number" || typeof b !== "number") {
console.log("Numbers only");
return;
}
if (b === 0) {
console.log("Cannot divide by zero");
return;
}
const result = a / b;
console.log("Result:", result);
}
divide(6, 3);
divide(6, 0);
divide("6", 3);

Meno annidamento con le restituzioni
Restituisca subito nei casi di errore; l'ultima riga restituisce chiaramente il successo.
// Early returns reduce else blocks
function canVote(age) {
if (typeof age !== "number") {
return false;
}
if (age < 18) {
return false;
}
return true;
}
console.log(canVote(20));
console.log(canVote(15));
console.log(canVote("20"));

Suggerimenti sulle guard clause
Checklist:
- Convalidi prima gli input.
- Restituisca subito in caso di errori o casi limite.
- Mantenga ogni guard clause breve e specifica.
- Scriva per ultimo il percorso principale, mantenendolo lineare.

Quiz sulle guard clause
Verifica rapida: che cos'è una guard clause?

Riepilogo
Riepilogo: usi le guard clause per gestire prima gli input errati, restituire subito un risultato e mantenere la logica principale lineare e leggibile.

Domande Frequenti
La lezione «Return anticipati e guard clause» è gratuita?
Sì — il testo completo di «Return anticipati e guard clause» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso JavaScript Academy, passa a CoddyKit PRO. Il corso JavaScript Academy include 3 lezioni in totale.
Cosa imparerò in «Return anticipati e guard clause»?
Utilizzi return anticipati e guard clause per semplificare le condizioni, ridurre l'annidamento e rendere chiaro il percorso principale. Eserciti JavaScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare JavaScript Academy?
Non è richiesta alcuna esperienza precedente. JavaScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 3.
Quanto tempo richiede la lezione «Return anticipati e guard clause»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione JavaScript Academy?
Sì. Ogni lezione JavaScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- if/else e switch — schemi fondamentali
- Cicli: for, while, do…while, for…of vs for…in
- Return anticipati e guard clause