这是我在关闭head标签之前在index.html
中添加的代码。
<script>
(function() {
var es = document.createElement('script');
es.type = 'text/javascript';
es.src = 'http://127.0.0.1:5500/javascript/js/external.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(es, s);
})();
// This one works
window.addEventListener('load', function() {
test();
});
// this one triggers error: "Uncaught ReferenceError: test is not defined"
test();
</script>
这是external.js
文件的代码:
(function(window) {
window.test = function() {
console.log("Hello!");
}
})(window);
我需要解释为什么在test()
事件之外调用load
函数会触发错误?