text/javascript
Type MIME standard des fichiers JavaScript. Remplace les anciens types application/javascript et application/x-javascript, désormais obsolètes.
Description
text/javascript est le type MIME officiel pour JavaScript, standardisé par la RFC 9239 (2022). Il remplace les anciens types application/javascript et application/x-javascript. Les modules ES (import/export) utilisent le même type MIME, qu’ils aient l’extension .js ou .mjs.
Usage en HTML
Script externe :
<script src="/js/app.js"></script>
<!-- Le serveur retourne text/javascript -->
Module ES :
<script type="module" src="/js/app.mjs"></script>
En-tête HTTP :
Content-Type: text/javascript; charset=UTF-8
Dans un <link rel="preload"> :
<link rel="preload" href="/js/critique.js" as="script" type="text/javascript">
Notes
application/javascript obsolète : la RFC 9239 (mai 2022) déclare application/javascript obsolète en faveur de text/javascript. En pratique, les navigateurs acceptent les deux, mais text/javascript est désormais la valeur correcte.
type="text/javascript" inutile en HTML5 : l’attribut type sur <script> est superflu si la valeur est text/javascript — c’est la valeur par défaut. Ne l’écrire que pour les modules (type="module") ou les templates.
MIME sniffing bloqué : comme pour CSS, les navigateurs modernes bloquent l’exécution des scripts servis avec un type MIME incorrect (ex. text/plain).