Pourquoi s'embêter avec l'attribut de type de script HTML si le serveur définit le type MIME ? Malgré le serveur attribuant des types MIME, HTML fournit un attribut de type pour et <lien> éléments. Bien que cet attribut puisse sembler superflu, il peut servir à des fins pratiques et a une signification historique.</p> <p>Doug Crockford explique que <script type="text/javascript"> est redondant puisque JavaScript est le langage de programmation par défaut dans les navigateurs. En XHTML, cet attribut est obligatoire mais inutile, alors qu'en HTML il est conseillé de l'omettre.</p> <p>Cependant, le W3C a opté pour un attribut de type plus polyvalent qui autorise les types MIME. Malheureusement, il n'existe aucun type MIME standard pour JavaScript, ce qui conduit à des variantes telles que "text/javascript" et "application/ecmascript".</p> <p>Heureusement, tous les navigateurs utilisent par défaut JavaScript comme langage de programmation, ce qui en fait une bonne pratique pour utilisez <script> sans l'attribut type pour une compatibilité et une concision optimales.</p> <p>À titre d'illustration, cinq scripts ont été testés :</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre><script type="application/ecmascript">alert("1"); alert("2"); alert("3"); alert("4"); alert("5");Copier après la connexion Sur Chrome, tous les scripts à l'exception de type="baloney" ont fonctionné, tandis qu'IE8 a rejeté type="application/ecmascript" et type="baloney". Cela suggère que même si l'attribut type peut être ignoré en toute sécurité, l'utilisation d'une valeur non valide peut entraîner des problèmes de compatibilité.