我检查,如果命名为“标记”嵌套对象项目为空或不是,在AngularIDE与Angular4Angular4 - 检查嵌套的对象项目为空
if (typeof this.user.data.token !== "undefined")
这是投掷<Cannot read property 'token' of null>
应该我必须检查每个嵌套的对象存在吗?
我检查,如果命名为“标记”嵌套对象项目为空或不是,在AngularIDE与Angular4Angular4 - 检查嵌套的对象项目为空
if (typeof this.user.data.token !== "undefined")
这是投掷<Cannot read property 'token' of null>
应该我必须检查每个嵌套的对象存在吗?
你必须......
if (this.user && this.user.data && this.user.data.token) {
}
始终牢记这未定义和空是不同的,当你看到不确定这意味着一个变量是宣布,但它不包含任何价值和null是一个实际assi gnment值。 undefined也是一个类型,null是一个对象。所以..
if(!(this.user.data.token == null));
应该为你工作,如果你想添加只是一些其他的条件和操作||
和类型的一个条件。
如果你正在寻找检查你可以这样做
this.user.data.token != undefined && ...
等不确定的对象..
您可以使用lodash检查嵌套属性 –
你能做出一个例子吗? –
检查lodash在官方文档中获取函数 –