As3*_*tin 3 javascript if-statement function undefined
所以我已经阅读了一些SO帖子和一些博客,但仍然无法弄清楚为什么我的代码不起作用.
我的代码:
function myFunct(d) {
if (typeof d.parent.name == "undefined") {
console.log("undefined") ;} else { console.log("defined") ;}
}
Run Code Online (Sandbox Code Playgroud)
d 是一个看起来像这样的对象:
Object {
children: Object,
count: 676
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试使用(!d.parent.name),hasOwnProperty,===,和如上面使用typeof.有什么建议?
我收到的错误是 TypeError: d.parent.name is undefined
更新:
好的,感谢大家的投入,如果问题令人困惑,我道歉.我实际上是在寻找,d.parent.parent但试图通过使用来简化问题d.parent.我认为问题是d.parent没有定义,所以它甚至没有达到d.parent.parent.抱歉没有更具体!
如果您希望在对象树中一直进行未定义安全检查,则可以使用:
if( typeof( ((d || {}).parent || {}).name ) === 'undefined') {
}
Run Code Online (Sandbox Code Playgroud)
如果您有奢侈的Lodash可供您使用:
var d = {
parent: {
name: "Joe"
}
};
if ( typeof (_.get(d, "parent.name")) === 'undefined' ) {
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1368 次 |
| 最近记录: |