Vad är filformatet JS?
.js-filer lagrar källkod skriven i programmeringsspråket JavaScript. .js-kod kan bäddas in på webbplatser och användas för att verifiera indata, manipulera webbläsarfönster eller bygga interaktiva bildgallerier. Även om JavaScript började främst som en front-end-teknik, körs det nu även på serversidan genom körtidsmiljöer som Node.js, Deno och Bun, vilket gör det till ett fullstack-språk. JavaScript-kod kan sparas direkt i HTML-filer, men en sådan praxis begränsar dess portabilitet. Den vanligaste lösningen är att använda dedikerade .js-filer som kan återanvändas på många webbplatser eller projekt.
JavaScript-kod kräver inte en Java-virtuell maskin för att köras. JavaScript är inte relaterat på något sätt till programmeringsspråket Java - endast namnet är likt. .js-kod är inte skyddad från att visas av användare; källkoden är läsbar i valfri textredigerare eller webbläsarens DevTools. Många .js-filer är fritt tillgängliga för allmänheten och kan användas på webbplatser gratis. Kod i fritt licensierade .js-filer kan redigeras och vidaredistribueras under open source-villkor.
Modern JavaScript stöder två modulsystem: ES-moduler (använder import/export, distribueras även som .mjs-filer) och CommonJS (använder require/module.exports). Data som utbyts mellan skript och servrar lagras vanligtvis som JSON. Projekt som behöver statisk typkontroll använder TypeScript, en typad övermängd som kompileras tillbaka till .js.
Säkerhet & trygghet
RISK: HIGHI en webbläsare körs JavaScript i en sandlåda och är relativt säkert. Faran finns på Windows: om du dubbelklickar på en fristående .js-fil körs den via Windows Script Host (WSH) med fullständiga rättigheter för ditt konto - ingen sandlåda. Skadliga .js-bilagor (ofta inuti ZIP-filer, ibland namngivna faktura.js / dokument.js) är en välkänd metod för att leverera ransomware och trojaner. Regler: dubbelklicka aldrig på en .js du fått via e-post eller laddat ner; öppna den i en textredigerare först för att läsa den; håll filändelser i Windows synliga så att en «foto.jpg.js» inte kan dölja sig. På webben bör du endast ladda skript från källor du litar på och använda Subresource Integrity (SRI)-hashar för tredjepartsskript.
Formatdetaljer
i ett nötskal- JScript / Windows Script Host-skript - På Windows körs en .js-dubbelklickning i WSH (cscript/wscript) med full systemåtkomst - en klassisk vektor för skadlig kod, inte en sandlåda i webbläsaren.
- JACOsub / JetScript / Netscape-konfiguration (föråldrad) - Gammal dokumentation listade .js för JACOsub-undertextskript och Netscape-inställningar; föråldrat och i praktiken oanvänt idag.
Program som öppnar JS-filer
Tekniska detaljer
djup specifikation| MIME-typ | text/javascript (primär); även application/javascript, text/ecmascript, application/ecmascript |
| Textkodning | UTF-8 (krävs för ES-moduler och webbleverans); äldre filer kan vara ASCII eller Latin-1 |
| Filsignatur (magic bytes) | Ingen - klartextformat; identifieras via filändelsen .js och innehåll, inte via header-bytes |
| Containerformat | Klartext - mänskligt läsbara instruktioner, funktioner och uttryck som körs uppifrån och ned |
| Modulsystem | ES-moduler (import/export) och CommonJS (require/module.exports); avgörs via fältet «type» i package.json |
| Exekveringsmiljöer | Alla större webbläsare (Chrome V8, Firefox SpiderMonkey, Safari JavaScriptCore) och servermiljöer (Node.js, Deno, Bun) |
| Typisk källkodsstorlek | 1 KB till några hundra KB per fil; produktionspaket kan nå flera MB |
| Produktionsleverans | Minifierad (borttagning av blanksteg och förkortning av identifierare), sedan gzip- eller Brotli-komprimerad för HTTP-överföring |
| Integritetsverifiering | Subresource Integrity (SRI) - sha256/sha384/sha512-hash i HTML-attributet <script integrity="..."> |
| Språkparadigm | Multiparadigm: prototypbaserad objektorientering, funktionell och händelsestyrd |
| Särskiljande filändelser | .mjs (explicit ES-modul), .cjs (explicit CommonJS), .jsx (React JSX-syntax), .ts (TypeScript-övermängd) |
| Källkodens synlighet | Källkoden är alltid mänskligt läsbar; obfuskering är kosmetisk, inte ett kryptografiskt skydd |
| Standardiseringsorgan | Ecma International (TC39-kommittén) - ECMA-262-standard; ny utgåva publiceras årligen |
| Shebang-stöd | Filer på serversidan kan börja med #!/usr/bin/env node för att köras direkt som ett skalskript |
| Källkartor (Source maps) | Minifierade filer paras ihop med .map-filer (JSON) för att mappa kompilerad utdata tillbaka till ursprungliga källkodsrader |
| Släppt | 1995 (Netscape Navigator 2.0); ECMA-262 1st edition 1997 |
| Senaste version | ECMAScript 2025 (ES2025 / 16th edition); language is updated yearly |
| Öppen standard | Ja · royaltyfri |
| Specifikation | tc39.es |
JS-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om JS-filer.