首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法读取null的属性'length‘(javascript)

无法读取null的属性'length‘(javascript)
EN

Stack Overflow用户
提问于 2013-04-01 00:19:15
回答 5查看 146.8K关注 0票数 22

在尝试调试时,我得到这一行的'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> 
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-04-01 00:22:11

正确的测试是:

if (capital != null && capital.length < 1) {

这可确保在执行长度检查时capital始终为非null。

此外,正如评论所暗示的那样,capitalnull,因为您从未对其进行过初始化。

票数 73
EN

Stack Overflow用户

发布于 2019-06-14 03:55:49

如果定义了资本,这也是可行的。如果不是,这意味着资本未定义或为空(或其他值,在js中计算为false )

if (capital && capital.length < 1) {do your stuff}
票数 2
EN

Stack Overflow用户

发布于 2013-04-01 00:21:59

从您提供的代码,不知道您正在使用的编程语言。变量capital为null。当您尝试读取属性长度时,系统无法读取,因为它正在尝试引用null变量。您需要定义capital

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15731559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档