【发布时间】:2012-06-07 17:05:36
【问题描述】:
当父属性不存在时,让 js 返回 undefined 而不是抛出错误的最佳方法是什么?
例子
a = {}
b = a.x.y.z
// Error: Cannot read property 'value' of undefined
// Target result: b = undefined
【问题讨论】:
-
如果你不想用大量的
try/catch填充你的代码(这在某种程度上是一个解决方案),在 JS 中通常你在使用之前检查一个对象是否被定义它的特定属性/方法。这意味着,在这种情况下,您应该在访问之前验证a是否具有x,等等。如果您使用这种方法来模拟命名空间,您可以创建自己的函数,为您递归地执行此操作。
标签: javascript