查看这段 JavaScript 代码:
(function (w, d) {
var loader = function () {
var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0];
s.src = "https://example.org/script.js";
tag.parentNode.insertBefore(s,tag);
};
w.addEventListener ? w.addEventListener("load", loader, false) :
w.attachEvent("onload", loader);
}) (window, document);
这段代码的作者为什么使用这种方法在文档中包含脚本? 该行有什么用处:
w.addEventListener ? w.addEventListener("load", loader, false) :
w.attachEvent("onload", loader);
最后一点:我是 JavaScript 初学者,最后的 (window, document)
是什么?
最佳答案
第一个问题,代码检查是否定义了window.addEventListener
。如果是,则使用它,否则使用window.attachEvent
。这是为了浏览器兼容性。
第二个问题,这段代码是一个匿名函数,它有两个参数,w和d。该函数会立即调用,并传递参数 window
和 document
。
关于JavaScript 一段代码解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10067829/