gpt4 book ai didi

javascript - typeof 运算符未按预期运行

转载 作者:行者123 更新时间:2023-11-30 09:49:49 25 4
gpt4 key购买 nike

我正在尝试检查特定的 javascript 对象是否存在。

var success = function(data) {

var x= 0;
var numOfCards = data.length;

for (x=0;x<data.length - 1;x++)
{
if (typeof data[x].labels[0].name !== 'undefined')
{
alert("Object Exists");
}
}
}

但是,Chrome 收到以下错误:

(index):21 Uncaught TypeError: Cannot read property 'name' of undefined

当然,我使用 typeof 检查对象的状态本身不应该导致错误吗?在第一次迭代中,警告框按预期显示,因为:

data[0].labels[0].name = "I am a value"

但是,

data[0].labels[1].name

由于“labels”数组为空而导致错误。

最佳答案

这绝对按预期工作。

Surely, my use of typeof to check the status of the object should not, in itself, result in an error?

当然,如果 name 未定义。在这种情况下,data[0].labels[0] 已经是未定义的了!

如果要允许所有级别都为 undefined,则必须为每个级别嵌套带有 typeofif 语句,然后再检查其中的嵌套对象。

关于javascript - typeof 运算符未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37056285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com