错误描述
我在使用递归遍历一个树形对象数组时,编译器报如下错误:
这个错误翻译过来是不能读取元素未定义的length属性。
由此可知,这个错误通常出现在你要使用某个元素的length属性,而这个元素不存在(即未定义)。
解决方法
根据编译器报的错,回过去看自己的代码块:
发现自己在使用递归函数时没有判断结点的children属性是否存在,由于存在叶子结点,叶子结点没有children属性。所以我对代码进行了修改,在调用length属性前,先判断结点的children属性是否存在:
这样就解决了(Promise/async): "TypeError: Cannot read property ‘length’ of undefined"错误,并且递归调用能够达到其目的。