【发布时间】:2012-08-20 13:59:20
【问题描述】:
我一直在对 window.document 对象进行一些研究,以确保我的 JavaScript 解决方案之一是可靠的。是否存在 window.document 对象为 null 或未定义的情况?
为了便于讨论,这里有一段不相关的示例代码。是否有任何情况下这段代码会失败(也就是抛出异常)?
$(document).ready(function() {
var PageLoaded = (window.document.readyState === "complete");
});
【问题讨论】:
-
您是在问决定是否需要检查一下吗?我不想考虑不得不到处写“if(window && window.document && window.document. ...) {”。
-
绝对!期待它被定义就好了。
-
您应该对使用文档对象的上下文有足够的了解,以了解它是否可以为空,以及如何适当地处理它。您的验证必须以上下文为条件。否则,每次使用它时,您总是会测试每个变量是否为 null。我们不会那样写代码。在您的示例中,如果没有引用真实的窗口,则测试就绪状态的上下文将没有意义。
标签: javascript dom