Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er
Identifiera körmiljön säkert (globalThis/window/global), kontrollera om fetch är tillgängligt och förstå varför filer kräver Node medan webbläsaren fokuserar på DOM och nätverk.
Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er är en gratis lektion i JavaScript Academy på CoddyKit. Detta är lektion 1 av 3. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för JavaScript Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i JavaScript Academy innehåller totalt 3 lektioner.
Överblick
Mål: Förstå var koden körs.
- Globala objekt: globalThis, window, global
- fetch: detektera funktionen, anta inte att den finns
- Filer: Node har fs, webbläsare har det inte
- URL:er: URL fungerar i båda miljöerna

Säker kontroll av körningsmiljö
Använd kontroller med typeof för att undvika ReferenceErrors och ta reda på var koden körs.
// 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: funktionsdetektering
Webbläsare har vanligtvis fetch, men äldre Node-versioner kanske inte har det. Kontrollera typeof fetch först.
// 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.");
}

Filer: Node jämfört med webbläsaren
Node tillhandahåller fs för filer, men webbläsaren gör det inte. Håll samma kodväg säker med en funktionskontroll.
// 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.");
}

Gemensamt: URL-API:t
Klassen URL tolkar adresser på ett enhetligt sätt i olika körningsmiljöer och är praktisk i små verktyg.
// 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);

Nybörjarvänliga vanor
Tips:
- Kontrollera typeof fetch innan du använder det.
- Filer kräver Node, till exempel fs; webbläsare fokuserar på DOM och nätverk.
- Använd globalThis för portabla globala objekt.
- Föredra små funktionskontroller framför att gissa körningsmiljön.

Quiz: detektera fetch
Snabb kontroll: Detektera fetch på ett säkert sätt.

Sammanfattning
Sammanfattning: Detektera körningsmiljön med säkra typeof-kontroller, kontrollera om fetch finns, kom ihåg att filer hanteras på Node-sidan och använd URL i båda miljöerna.

Lär dig JavaScript med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 59
- Lektioner
- 200
Vanliga frågor
Är lektionen ”Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen JavaScript Academy, inklusive ”Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i JavaScript Academy innehåller totalt 3 lektioner.
Vad lär jag mig i ”Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er”?
Identifiera körmiljön säkert (globalThis/window/global), kontrollera om fetch är tillgängligt och förstå varför filer kräver Node medan webbläsaren fokuserar på DOM och nätverk. Ni övar på JavaScript Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig JavaScript Academy?
Du behöver inga förkunskaper. Utbildningen i JavaScript Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 3.
Hur lång tid tar lektionen ”Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här JavaScript Academy-lektionen?
Ja. Varje JavaScript Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Globala objekt, tillgänglighet för fetch, fil- och nätverks-API:er
- ESM-laddarens egenheter och skillnader mellan sökvägar och URL:er
- Miljövariabler och konfigurationsmönster