web-dev-qa-db-ja.com

text / javascript vs application / javascript

MIMEタイプのセマンティクスに興味がありますapplication/javascripttext/javascript

明らかに、1つは実行されることになっており、もう1つは単なるテキストであることになっています。

そうですか 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

47
ddavison

このあたりtext/javascriptobsoleteです。つかいます application/javascript代わりに。

text/javascript(廃止):JavaScript; RFC 4329で定義および廃止され、application/javascriptを優先して使用を推奨していません。ただし、HTML 4および5ではtext/javascriptが許可されており、application/javascriptとは異なり、クロスブラウザがサポートされています。 HTML5のタグの「type」属性はオプションであり、すべてのブラウザが常に正しいデフォルトを想定しているため(仕様で要求されているHTML 4でも)、まったく使用する必要はありません。

この標準はIE <= 8と互換性がありません。

58
dthree