gpt4 book ai didi

javascript - 检查对象参数是否未定义

转载 作者:搜寻专家 更新时间:2023-11-01 05:21:55 25 4
gpt4 key购买 nike

我的情况与此处类似:Javascript check if object property exists, even when object is undefined .

我的问题是,如果你有一个属性链会发生什么。示例:

var obj = {'a': {'b': {'c': {'d': 'I exists'}}}}

我需要检查是否定义了“d”。为了不出错,我必须像这样检查:

if (typeof obj != 'undefined' && typeof obj['a'] != 'undefined' && typeof obj['a']['b'] != 'undefined' && typeof obj['a']['b']['c'] != 'undefined' && typeof obj['a']['b']['c']['d'] != 'undefined')

您可以看到这会变得多么烦人。例如,外推到 999 级深度元素。有没有办法摆脱前n-1个条件?

最佳答案

使用 try-catch 的解决方案:

var check = function(obj) {
try {
return (typeof obj.a.b.c.d !== 'undefined');
} catch (e) {
return false;
}
};

alert(check({
'a': {
'b': {
'c': {
'd': 'I exists'
}
}
}
}));

关于javascript - 检查对象参数是否未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32885990/

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