Чтобы браузеры, которые не поддерживают скрипты, не выводили их код на страницу или не пытались их интерпретировать как теги, а принимали за комментарии.
А поконкретнее — это какие именно браузеры? Неужели существуют браузеры, которые не понимают тег script и пытаются с его содержимым что-то сделать? Если сейчас таких браузеров нет, то интересно, а раньше-то какие браузеры не умели понимать тег script, как они назывались?
Денис Инешин: ну вот и я так считаю, но, видимо, у авора ответа есть какая-то дополнительная инфа, либо он произносит стандартную шаблонную мантру, а сути не ведает.
Очень странно, что вы встречаете в коде такое — это давным-давно устарело и не факт, что вообще когда-либо работало. Лично я уже много лет занимаюсь фронтенд-разработкой и практически никогда не видел в коде такие вот штуки и сам вообще никогда-приникогда их не использовал — проблем никогда не было, никакой код не выводился на страницу даже в самых допотопных браузерах (начинал с IE6).
Вставлять скрипты на страницу придумали гораздо позже, чем появился HTML. При этом механизма принудительного обновления браузеров каждые две недели, как сейчас в Chrome, не было. Я уже не помню, существовал ли IE на момент выхода Netscape Navigator 2 (в котором появился JS), но какие-то браузеры уже точно были.
Вставляют это хрень до сих пор только баннерные сети и счетчики, которые так и не вылезли из 1995 года. Нужды в ней сейчас нет ни на грош — даже если какой-то браузер и не выполняет JS, он все равно знает, что это за тэг.
P.S. type="text/javascript" тоже уже можно не писать:)