在遇到树形结构数据,js进行遍历时,return不会跳出整个函数。需要用到throw

check(list){
for (const item of list) {
if (item.name=='张三孙') {//这里可以校验其他情况
console.log(item.name);
//...一些操作
// 这里return并不会跳除整个check()函数,可以使用throw
throw true;
}
if (item.child) {
this.check(item.child);
}
}
}
//另一个组件,或者需要检测check()函数返回的其他地方
let arr = [
{
name:'张三',
child:[
{
name:'张三子',
child:[
{
name:'张三孙',
}
]
}
]
}
]
try {
this.check(arr);
} catch (stat) {
if (stat) { return; }
}

以上就实现了 嵌套函数的整体跳出