Angular 2 Property undefined while Checking it
问题描述:
得到了一个很小的问题。Angular 2 Property undefined while Checking it
if(this.arrTest[1][1][1][0][0] === undefined){
console.log("this array is undefined");
}
控制台: 错误类型错误:无法读取属性“1”的未定义
我用同样的类型检查经常在我的项目。只有在这一行上它失败了,如果(arrTest ..),if(typeof arrTest ..)也尝试过。任何想法 ?
编辑:console.log不会被触发。
答
错误表示正在匹配的属性不存在。
如果下列之一为真
- this.arrTest即会发生是不确定的或
- this.arrTest [1]未定义
- this.arrTest [1] [1]是未定义的。
所以基本上你可以检查上述所有如下
if(this.arrTest === undefined || this.arrTest[1] === undefined || this.arrTest[1][1] === undefined || this.arrTest[1][1][1] === undefined || this.arrTest[1][1][1][0] === undefined || this.arrTest[1][1][1][0][0] === undefined)
+0
我认为'this.arrTest [1] [1] [1] [0] [ 0]'如果this.arrTest [1] [1]'未定义,那么错误信息将显示为'ERROR TypeError:无法读取未定义的属性'1' –
+0
是的尝试过,同样的错误。 – Doomenik
可以请你添加一些信息呢?这个条件块的上下文是什么?一个组件?类?服务?不能帮助你的小信息 –
@ Jota.Toledo我自己发现了它。谢谢。它与组件,类或其他内容无关。我只是没有仔细阅读错误,它已经说属性1是未定义的,所以我只是不能检查更深的属性... – Doomenik