Подтвердить что ты не робот

Text/javascript vs application/javascript

Мне интересна семантика MIME-типов application/javascript по сравнению с text/javascript.

Очевидно, что один должен быть выполнен, а другой должен быть просто текстовым.

Я вижу application/javascript при просмотре заголовков внешней нагрузки .js.

HTTP/1.1 200 OK
Date: Mon, 13 Jan 2014 18:32:58 GMT
Server: Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/0.9.8e-fips-rhel5
Content-Type: application/javascript
Content-Length: 856
keep-alive: timeout=5, max=59
Via: 1.1 (jetty)
Accept-Ranges: bytes

Если этот application/javascript выполнит javascript, почему бы нам не использовать

<script type="application/javascript">
  // some js code.
</script>

И наоборот, почему внешний js-груз не text/javascript?

4b9b3361

Ответ 1

В этом text/javascript устарел. Вместо этого используйте application/javascript.

text/javascript (Устаревший): JavaScript; Определено и устарело в RFC 4329, чтобы препятствовать его использованию в пользу приложение /JavaScript. Тем не менее, текст /javascript разрешен в HTML 4 и 5 и, в отличие от приложения /javascript, имеет поддержку кросс-браузера. Атрибут "type" тега в HTML5 является необязательным и нет необходимости использовать его вообще, поскольку все браузеры всегда предположил правильный по умолчанию (даже в HTML 4, где это требовалось спецификация).

Этот стандарт несовместим с IE <= 8.