Hvad er JS-filformatet?
.js-filer gemmer kildekode skrevet i programmeringssproget JavaScript. .js-kode kan indlejres på websteder og bruges til at verificere inputdata, manipulere browservinduer eller bygge interaktive billedgallerier. Selvom JavaScript begyndte som primært en front-end-teknologi, kører det nu også server-side gennem runtimes som Node.js, Deno og Bun, hvilket gør det til et full-stack-sprog. JavaScript-kode kan gemmes direkte i HTML-filer, men denne praksis begrænser dens portabilitet. Den mere almindelige løsning er at bruge dedikerede .js-filer, der kan genbruges på tværs af mange websteder eller projekter.
JavaScript-kode kræver ikke en Java virtual machine for at blive afviklet. JavaScript er ikke relateret til programmeringssproget Java på nogen måde - kun navnet ligner. .js-kode er ikke beskyttet mod at blive set af brugere; kilden er læsbar i enhver teksteditor eller browserens DevTools. Mange .js-filer er frit tilgængelige for offentligheden og kan bruges gratis på websteder. Kode i frit licenserede .js-filer kan redigeres og videredistribueres under open-source-vilkår.
Moderne JavaScript understøtter to modulsystemer: ES-moduler (der bruger import/export, også distribueret som .mjs-filer) og CommonJS (der bruger require/module.exports). Data, der udveksles mellem scripts og servere, gemmes typisk som JSON. Projekter, der har brug for statisk typetjek, bruger TypeScript, en typet overbygning, der kompileres tilbage til .js.
Sikkerhed og tryghed
RISIKO: HIGHI en webbrowser kører JavaScript i en sandkasse og er relativt sikkert. Faren er på Windows: dobbeltklik på en løs .js-fil kører den gennem Windows Script Host (WSH) med din kontos fulde rettigheder - ingen sandkasse. Ondsindede .js-vedhæftninger (ofte inde i ZIP-filer, nogle gange navngivet faktura.js / dokument.js) er en velkendt måde at levere ransomware og trojanere på. Regler: dobbeltklik aldrig på en .js, du har modtaget via e-mail eller download; åbn den i en teksteditor først for at læse den; hold Windows-filendelser synlige, så en «foto.jpg.js» ikke kan skjule sig. På nettet bør du kun indlæse scripts fra kilder, du stoler på, og bruge Subresource Integrity (SRI) hashes til tredjepartsscripts.
Formatdetaljer
kort fortalt- JScript / Windows Script Host script - På Windows kører et .js-dobbeltklik i WSH (cscript/wscript) med fuld systemadgang - en klassisk malware-vektor, ikke en browser-sandkasse.
- JACOsub / JetScript / Netscape config (legacy) - Gammel dokumentation listede .js for JACOsub-undertekstscripts og Netscape-indstillinger; forældet og reelt ubrugt i dag.
Programmer der åbner JS-filer
Tekniske detaljer
dyb specifikation| MIME-type | text/javascript (primær); også application/javascript, text/ecmascript, application/ecmascript |
| Tekstkodning | UTF-8 (påkrævet for ES-moduler og web-levering); ældre filer kan være ASCII eller Latin-1 |
| Filsignatur (magic bytes) | Ingen - almindeligt tekstformat; identificeres ved .js-filendelse og indhold, ikke header-bytes |
| Containerformat | Almindelig tekst - menneskeligt læsbare sætninger, funktioner og udtryk, der udføres fra top til bund |
| Modulsystemer | ES-moduler (import/export) og CommonJS (require/module.exports); afgøres via feltet «type» i package.json |
| Eksekveringsmiljøer | Alle større browsere (Chrome V8, Firefox SpiderMonkey, Safari JavaScriptCore) og server-runtimes (Node.js, Deno, Bun) |
| Typisk kildestørrelse | 1 KB til et par hundrede KB pr. fil; produktions-bundles kan nå flere MB |
| Produktionslevering | Minificeret (fjernelse af mellemrum og forkortelse af identifikatorer), derefter gzip- eller Brotli-komprimeret til HTTP-overførsel |
| Integritetsverifikation | Subresource Integrity (SRI) - sha256/sha384/sha512 hash i HTML-attributten <script integrity="..."> |
| Sprogparadigme | Multi-paradigme: prototype-baseret objektorienteret, funktionelt og hændelsesdrevet |
| Skelnen mellem filendelser | .mjs (eksplicit ES-modul), .cjs (eksplicit CommonJS), .jsx (React JSX-syntaks), .ts (TypeScript-overbygning) |
| Kildesynlighed | Kilden er altid menneskeligt læsbar; obfuskering er kosmetisk, ikke kryptografisk beskyttelse |
| Standardiseringsorgan | Ecma International (TC39-komitéen) - ECMA-262-standard; ny udgave udgives årligt |
| Shebang-understøttelse | Server-side filer kan begynde med #!/usr/bin/env node for at køre direkte som et shell-script |
| Source maps | Minificerede filer parres med .map-filer (JSON) for at mappe kompileret output tilbage til de originale kildelinjer |
| Udgivet | 1995 (Netscape Navigator 2.0); ECMA-262 1st edition 1997 |
| Seneste version | ECMAScript 2025 (ES2025 / 16th edition); language is updated yearly |
| Åben standard | Ja · royaltyfri |
| Specifikation | tc39.es |
JS-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om JS-filer.