JS实现递归便利多维不规则数组
今天是个上分的好日汁啊,好日汁啊~
需求需要遍历一个多维对象数组返回ID和已有数据ID相同的项。
数组大概长这样:
data: [{
children: [{
children: [{
children: [{
children: [{
children: [{
id: "156",
title: "识别",
type: "识别",
deptName: "研究"
}],
title: "识别"
}],
title: "智能"
}],
title: "前沿"
}],
title: "中台"
}],
title: "能力"
}]
解决代码:
mounted() {
this.parseJson(this.data, 'id', '156');
}
parseJson(params, key, value) {
for (let v in params) {
let element = params[v]
// 1.判断是对象或者数组
if (typeof (element) == 'object') {
let result = this.parseJson(element, key, value)
if(result) return result
} else {
if (v == key) {
if (element == value) return params
}
}
}
}
针不戳~