В чем преимущество использования unescape для document.write для загрузки javascript?
-
22-07-2019 - |
Вопрос
Код, который необходимо добавить для отслеживания веб-страницы с помощью Google Analytics, выглядит следующим образом:
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-XXXXX");
pageTracker._trackPageview();
} catch(err) {}</script>
В чем преимущество этих строк:
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
против этих строк:
document.write("<script src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'><\/script>");
Я написал некоторый код, который выполняет нечто подобное (загрузите javascript " через " запись документа), но он не использует unescape, и мне интересно, следует ли мне следовать примеру google-analytics.
Решение
Это означает, что код будет работать в XML / XHTML и HTML без необходимости связываться с CDATA
Другие советы
Ну, одним из преимуществ является то, что вам не нужно беспокоиться о кавычках в загружаемом скрипте, мешающих кавычкам в вашем скрипте, который выполняет загрузку (поскольку в загруженном скрипте можно избежать экранирования). р>