Почему эта строка javascript выглядит так? Я имею в виду, почему в конце лишний +?
'<script type="text/javascript" src="' + src + '"></' + 'script>'
Источник: http://code.google.com/p/closure-library/source/browse/trunk/closure/goog/base.js#511
Почему эта строка javascript выглядит так? Я имею в виду, почему в конце лишний +?
'<script type="text/javascript" src="' + src + '"></' + 'script>'
Источник: http://code.google.com/p/closure-library/source/browse/trunk/closure/goog/base.js#511
Потому что, если у вас есть "</script>"
внутри тега <script>
, браузер подумает, что вы закрыли тег скрипта. Это довольно распространенный способ включения текста </script>
в строку с тегами <script>
.
<script>...</script>
. Только после этого содержимое передается JS-движку для дальнейшей обработки. Парсер HTML не знает о синтаксисе JavaScript, поэтому он не знает, находится ли конечный тег внутри строкового литерала.
- person user123444555621; 18.01.2012
...<\/script>
, так как JavaScript видит \/
как косую черту, а синтаксический анализатор HTML - нет.
- person T.J. Crowder; 18.01.2012