JSON-Modulscripts sind jetzt als Baseline verfügbar

verfügbar. keywords: docType:Blog,category:Baseline2025,language:JavaScript

Veröffentlicht: 18. Juni 2025

Wenn Sie eine JSON-Datei in ein JavaScript-Modul importieren wollten, mussten Sie bisher JSON in JavaScript einbetten, um eine reguläre import-Anweisung verwenden zu können, oder eine Datei mit fetch() herunterladen und dann Response.json() aufrufen. Dieses Problem wird jetzt in allen modernen Browsern dank JSON-Modulscripts und Importattributen gelöst.

Das folgende Beispiel zeigt, wie ein JSON-Modulscript aus einem JavaScript-Modulscript importiert werden kann:

import astronomyPictureOfTheDay from "./apod.json" with { type: "json" };

const {explanation, title, url} = astronomyPictureOfTheDay;

document.querySelector('h2').textContent = title;
document.querySelector('figcaption').textContent = explanation;
Object.assign(document.querySelector('img'), { src: url, alt: title });

JSON.parse() ist nicht erforderlich. Die JSON-Datei wird direkt nach import geparst und ist einsatzbereit. Das funktioniert, weil der Browser bereits weiß, dass es sich um JSON handelt, was Sie mit dem Importattribut with { type: "json" } angeben.

Sehen Sie sich diese Live-Demo des JSON-Modulimports an, in der der Code aus dem vorherigen Listeneintrag verwendet wird.

Die MIME-Typ-Überprüfung für Modulscripts ist streng. Damit das JSON-Modul-Script abgerufen werden kann, muss die HTTP-Antwort einen JSON-MIME-Typ haben, z. B. Content-Type: text/json.

Wenn der Teil with { type: "json" } der Anweisung weggelassen wird, geht der Browser davon aus, dass ein JavaScript-Modulscript importiert werden soll. Der Abruf schlägt fehl, wenn die HTTP-Antwort einen MIME-Typ hat, der kein JavaScript-MIME-Typ ist.

Weitere Informationen zur Verarbeitung von JSON-Modulscripts finden Sie in der HTML-Spezifikation.