1

我的 javascript 代码中有一个空值检查,似乎没有按预期运行。它是这样的:

if (myVariable) {
// Do things with my variable
}

当我到达 if 语句的内部时,Chrome 的 Java 控制台说我尝试使用的值 (myVariable) 为空。也许我没有正确理解 if 语句?抛出错误的具体行是

window.document.getElementById("myElement").innerText = myVariable

提前致谢。

4

2 回答 2

8

它告诉你

window.document.getElementById("myElement")

null。这可能意味着您的代码在解析 DOM 之前正在运行。

您应该如何修复它取决于您没有向我们展示的代码,但作为一个实验,您可以尝试将该代码移动到<script>末尾的标签中<body>,看看是否有帮助。此外,验证“myElement”确实是您打算定位的元素的“id”。

于 2013-06-19T17:12:22.490 回答
0

当您将某些内容分配给 null 或未定义的值时,这不是问题,不应引发异常。

例如,您可以明确地说:

var something = null;
var somethingElse = undefined;
var somethingOtherThing = myNonExistentObject;

这似乎意味着您误解了异常?或者有其他问题。例如,您尝试分配的属性为 null 或未定义的事物。

以下将引发错误:

var something = null;
something.foo = 123; //error! something is null.
于 2013-06-19T17:15:40.267 回答