Какой смысл обрезать код javascript в <!-- -->
?
Обертка javascript в <! - ->
Ответ 1
Это один из моих питомцев. Это древняя практика разработчиков для защиты старых браузеров, которые не понимают теги <script>
. Без этого они могут не загружать страницу или отображать содержимое script как содержимое html.
Но мы говорим о древних браузерах здесь. Единственными браузерами, которые когда-либо терпели неудачу при разборе javascript, были браузеры 1995 года. Эти браузеры просто не используются сегодня. Эта практика - всего лишь удержание 90-летнего веб-разработки.
Никто никогда не должен класть блоки <!-- -->
вокруг своего содержимого тега script.
Если вы видите разработчиков, которые все еще это делают, исправьте их. Не анализировать javascript не было проблемой, так как Netscape 1.0 и эта практика фактически считается вредной для современных браузеров.
Ответ 2
Обернув Javascript-код в комментарии HTML, вы предотвратите старые браузеры, которые не поддерживают Javascript, пытаясь обработать код как HTML.
Ответ 3
Проверка
должен ли код javascript начинаться с "<! -" ?
теперь вам нужно обернуть js-код в <!-- -->
Ответ 4
Он не позволяет агентам пользователя, которые либо не знают тег <script>
, либо не обрабатывают его должным образом, пытаясь разобрать или отобразить код JavaScript как HTML.
Общепринятое мнение, что вам нужно отправиться в конце 1990 года, чтобы найти браузер, который не знает тег <script>
. Тем не менее, мои собственные сайты часто просматриваются инструментами, которые реализуют очень рудиментарные парсеры (почему бы и нет? Вы можете написать граббер с 10 строками PHP). И я также обнаружил, что JavaScript-код появляется в середине документа после вставки с веб-сайта в настольное приложение, которое должно принимать HTML из буфера обмена. Таким образом, экранирование не HTML-содержимого в комментариях HTML не так глупо, как может показаться.
Ответ 5
Старый браузер, который не понимает Javascript, просто увидит комментарий HTML.
Ответ 6
Помимо некоторых браузеров, возможно, не поддерживающих его, есть еще одна причина: валидатор W3C XHTML (http://validator.w3.org) интерпретирует JavaScript, который не является в тегах комментариев, как если бы это был HTML. Таким образом, что-то вроде "i < 0" будет означать, что ваш веб-сайт не проверяется, если вы не используете эти теги.