Validazione degli input e basi dell’escaping
Validi e normalizzi gli input con piccole allowlist e guard clause; fai l’escape dei caratteri rischiosi prima di visualizzare il testo.
Validazione degli input e basi dell’escaping è una lezione JavaScript Academy gratuita su CoddyKit. Questa è la lezione 1 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.
Panoramica
Obiettivo: rendere gli input semplici e sicuri.
- Usate le guard clause per rifiutare subito gli input
- Preferite le allowlist alle regole vaghe
- Normalizzate a una struttura semplice
- Eseguite l'escape dei caratteri speciali prima di mostrare il testo

Basi delle verifiche sui numeri
Aggiungete controlli semplici: verificate il tipo e l'intervallo, poi normalizzate il valore finale.
// Validate age: number and range guard
function parseAge(input) {
// trim and parse
const n = Number(input);
if (!Number.isFinite(n)) return null; // reject non-numbers
if (n < 0 || n > 130) return null; // reject out-of-range
return Math.floor(n); // normalize to integer
}
console.log("age ok:", parseAge("21"));
console.log("age bad:", parseAge("twenty"));

Escape per una visualizzazione sicura
Prima di mostrare il testo inserito dall'utente, esegua l'escape dei caratteri speciali affinché l'interfaccia lo tratti come testo normale.
// Escape a few risky characters before displaying in HTML contexts
function escapeText(s) {
if (typeof s !== "string") return "";
return s
.replaceAll("&", "&")
.replaceAll("<", "<")
.replaceAll(">", ">")
.replaceAll("\"", """)
.replaceAll("'", "'");
}
console.log("escaped:", escapeText("<b>Hello & bye</b>"));

Le allowlist nella pratica
Preferisca le allowlist per gli insiemi fissi (come codici o ruoli). Normalizzi maiuscole/minuscole e spaziatura.
// Allowlist example: only certain country codes
const ALLOWED = new Set(["TR", "US", "DE", "GB"]);
function parseCountry(code) {
if (typeof code !== "string") return null;
const up = code.trim().toUpperCase();
if (!ALLOWED.has(up)) return null; // reject unknown
return up; // normalized
}
console.log("country ok:", parseCountry("tr"));
console.log("country bad:", parseCountry("xx"));

Piccolo validatore di oggetti
Verifichi tipo e limiti, quindi restituisca una struttura normalizzata di cui il resto del codice possa fidarsi.
// Validate a tiny user object and normalize
function validateUser(input) {
if (typeof input !== "object" || input === null) return null;
const nameOk = typeof input.name === "string" && input.name.trim().length >= 1 && input.name.trim().length <= 40;
const ageOk = parseAge(input.age) !== null;
if (!nameOk || !ageOk) return null;
return {
name: input.name.trim(),
age: parseAge(input.age)
};
}
console.log("user ok:", validateUser({ name: " Ayla ", age: "22" }));
console.log("user bad:", validateUser({ name: "", age: "old" }));

Buone pratiche difensive
Suggerimenti:
- Convalidi ai punti di ingresso (input dell'utente, rete).
- Utilizzi allowlist, intervalli e controlli del tipo.
- Normalizzi una sola volta; mantenga semplice il resto.
- Esegua l'escape prima di mostrare il testo agli utenti.

Quiz sulle basi della difesa degli input
Verifica rapida: modello di input sicuro.

Riepilogo
Riepilogo: applichi i controlli subito, utilizzi le allowlist, normalizzi in una struttura sicura ed esegua l'escape prima della visualizzazione. Mantenga ogni passaggio piccolo e leggibile.

Domande Frequenti
La lezione «Validazione degli input e basi dell’escaping» è gratuita?
Sì — il testo completo di «Validazione degli input e basi dell’escaping» è 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 «Validazione degli input e basi dell’escaping»?
Validi e normalizzi gli input con piccole allowlist e guard clause; fai l’escape dei caratteri rischiosi prima di visualizzare il testo. 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 1 di 3.
Quanto tempo richiede la lezione «Validazione degli input e basi dell’escaping»?
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
- Validazione degli input e basi dell’escaping
- Fusione sicura degli oggetti; congelamento e sigillatura
- Error boundary (concettuali) senza framework