#javascript #html #reflection
#javascript #HTML #отражение
Вопрос:
Если я помещу следующий код в html-файл:
<script>
function foo()
{
}
alert("foo" in window);
</script>
true
показано в диалоговом окне. (см. https://jsfiddle.net/f1t2c3kL например.) Но если я перенесу foo
определение в file.js
и поместлю
<script type="text/javascript" src="file.js"></script>
вместо этого в заголовке html отображается false
.
Что я должен использовать вместо window
, чтобы отображалось предупреждение true
?
Ответ №1:
Порядок имеет значение: сначала загрузка, затем вызов.
(И разместите свои скрипты перед закрывающим </body>
тегом)
<script type="text/javascript" src="file.js"></script>
<script>
alert("foo" in window); // true
</script>
</body>
Комментарии:
1. Это порядок, в котором я наблюдаю
false
.2. Неважно, проблема заключалась в том, что моего скрипта не было в теле.