javascript – 访问有时为null的对象的属性,没有错误

前端之家收集整理的这篇文章主要介绍了javascript – 访问有时为null的对象的属性,没有错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Test for existence of nested JavaScript object key48个
在javascript中,我经常想要访问可能不存在的对象的属性.

例如:

var foo = someObject.myProperty

但是,如果未定义someObject,则会抛出错误.访问可能为空的对象的属性的常规方法是什么,如果不存在则返回false或null?

在Ruby中,我可以做someObject.try(:myProperty).是否有JS等价物?

解决方法

我不认为这与JavaScript中的问题有直接的对应关系.但是我们可以写一些做同样事情的util方法.
Object.prototype.safeGet = function(key) {
    return this? this[key] : false;
}
var nullObject = null;
console.log(Object.safeGet.call(nullObject,'invalid'));

这是JSFiddle:http://jsfiddle.net/LBsY7/1/

猜你在找的JavaScript相关文章