Вам взагалі потрібен атрибут type? Якщо ви використовуєте HTML5, ні. Інакше так. HTML 4.01 та XHTML 1.0 визначають typeатрибут за необхідності, тоді як HTML5 має його як необов’язковий, за замовчуванням text/javascript. Зараз HTML5 широко впроваджений, тому, якщо ви використовуєте докттип HTML5, <script>...</script>це дійсний і хороший вибір.
Щодо того, що повинно йти в атрибуті type, тип MIME, application/javascriptзареєстрований у 2006 році, призначений для заміни text/javascriptта підтримується поточними версіями всіх основних браузерів (включаючи Internet Explorer 9). Цитата з відповідного RFC :
Таким чином, цей документ визначає текст / javascript та text / ecmascript, але позначає їх як "застарілі". Не рекомендується використовувати експериментальні та незареєстровані типи засобів масової інформації, як зазначено у частині вище. Типи носіїв,
* application/javascript
* application/ecmascript
які також визначені в цьому документі, призначені для загального користування і повинні використовуватися натомість.
Однак IE до версії 8 включно не виконує сценарій всередині <script>елемента з typeатрибутом або, application/javascriptабо application/ecmascript, тому, якщо вам потрібно підтримати старий IE, ви застрягли text/javascript.