在尝试调试时,我得到这一行的'length‘null错误。它是按照书中的说明写的,所以我不明白为什么它会给我这个错误?谢谢,=)
if (capital.length < 1) {
(这里是所要求的完整代码..对不起)
<script type="text/javascript">
var capital = window.prompt("What is the capital of Missouri?","")
if (capital.length < 1) {
document.getElementById("firstdiv").innerHTML="Sorry you don't feel like playing.<br /> The Capital of Missouri is Jefferson City.";
}
else {
if (!window.confirm("Is that your final answer?")){ return true;
document.getElementById("firstdiv").innerHTML = "The capital of Missouri is: <bold>" + capital + "</bold>, so says you.";
}
else{
return false;
}
}
</script>
发布于 2013-04-01 00:22:11
正确的测试是:
if (capital != null && capital.length < 1) {
这可确保在执行长度检查时capital
始终为非null。
此外,正如评论所暗示的那样,capital
是null
,因为您从未对其进行过初始化。
发布于 2019-06-14 03:55:49
如果定义了资本,这也是可行的。如果不是,这意味着资本未定义或为空(或其他值,在js中计算为false )
if (capital && capital.length < 1) {do your stuff}
发布于 2013-04-01 00:21:59
从您提供的代码,不知道您正在使用的编程语言。变量capital
为null。当您尝试读取属性长度时,系统无法读取,因为它正在尝试引用null变量。您需要定义capital
。
https://stackoverflow.com/questions/15731559
复制相似问题