Globali, disponibilità di fetch, API per file e rete
Rilevi l’ambiente di esecuzione in sicurezza (globalThis/window/global), controlli la disponibilità di fetch e comprendi perché i file richiedano Node mentre il browser si concentri su DOM e rete.
Globali, disponibilità di fetch, API per file e rete è 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: capire dove viene eseguito il codice.
- Globali: globalThis, window, global
- fetch: rilevi la funzionalità, non la dia per scontata
- File: Node ha fs; i browser no
- URL: funziona in entrambi

Rilevamento sicuro del runtime
Utilizzi controlli typeof per evitare ReferenceError e capire dove è in esecuzione il codice.
// Detect presence of common globals
const hasWindow = typeof window !== "undefined";
const hasGlobal = typeof global !== "undefined";
const hasProcess = typeof process !== "undefined" && process && typeof process.version === "string";
console.log("globalThis exists?", typeof globalThis !== "undefined");
console.log("window?", hasWindow);
console.log("global?", hasGlobal);
console.log("Node process?", hasProcess);

fetch: rilevamento della funzionalità
I browser dispongono generalmente di fetch; le versioni meno recenti di Node potrebbero non averlo. Verifichi prima typeof fetch.
// Feature-detect fetch; do not assume it exists everywhere
const hasFetch = typeof fetch === "function";
console.log("fetch available?", hasFetch);
// If available, you could call fetch(...). For a safe demo we only log.
if (!hasFetch) {
console.log("Provide a fallback or use a library in Node versions without fetch.");
}

File: Node e browser
Node espone fs per i file; il browser no. Mantenga sicuro lo stesso percorso del codice con un controllo della funzionalità.
// Files are a Node concern; browsers cannot read your disk directly
const hasRequire = typeof require === "function";
console.log("CommonJS require available?", hasRequire);
// Safe message instead of real file I/O (keeps the demo runnable everywhere)
if (hasRequire) {
console.log("In Node you can use fs for files; in browsers you cannot.");
} else {
console.log("No require here; likely a browser-like or sandboxed runtime.");
}

In comune: API URL
La classe URL analizza gli indirizzi in modo coerente tra i runtime; è utile per piccoli strumenti.
// URL is available in both environments
const u = new URL("https://example.com/path?x=1#top");
console.log("host:", u.host);
console.log("pathname:", u.pathname);
console.log("search:", u.search);
console.log("hash:", u.hash);

Buone pratiche per principianti
Suggerimenti:
- Verifichi typeof fetch prima di utilizzarlo.
- I file richiedono Node (ad es. fs); i browser si concentrano su DOM e rete.
- Utilizzi globalThis per globali portabili.
- Preferisca piccoli controlli della funzionalità alle supposizioni sull'ambiente.

Quiz sul rilevamento di fetch
Verifica rapida: rilevare fetch in sicurezza.

Riepilogo
Riepilogo: rilevi il runtime con controlli typeof sicuri, verifichi la disponibilità di fetch, ricordi che i file sono lato Node e utilizzi URL in entrambi gli ambienti.

Domande Frequenti
La lezione «Globali, disponibilità di fetch, API per file e rete» è gratuita?
Sì — il testo completo di «Globali, disponibilità di fetch, API per file e rete» è 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 «Globali, disponibilità di fetch, API per file e rete»?
Rilevi l’ambiente di esecuzione in sicurezza (globalThis/window/global), controlli la disponibilità di fetch e comprendi perché i file richiedano Node mentre il browser si concentri su DOM e rete. 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 «Globali, disponibilità di fetch, API per file e rete»?
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
- Globali, disponibilità di fetch, API per file e rete
- Particolarità del loader ESM, differenze tra path e URL
- Variabili d’ambiente e schemi di configurazione