赞
踩
在一个复杂的数组对象数据中(嵌套多层),通过key值返回对应的对象,在网上搜到的,感觉挺好用的,也没有多深入研究,直接拿来用了(捂脸)
1、代码
function parseJson(jsonObj, key, value) { // 循环所有键 let array = [] for (let v in jsonObj) { let element = jsonObj[v] // 1.判断是对象或者数组 if (typeof (element) == 'object') { let result = parseJson(element, key, value) if(result) return result } else { if (v == key) { if (element == value) return jsonObj } } } }
2、方法使用
举个例子:
let arr = [ { key: 1, value: 'a', children: null }, { key: 2, value: 'b', children: null }, { key: 3, value: 'c', children: [ { key: 4, value: 'c-1', children: null }, { key: 5, value: 'c-2', children: null }, { key: 6, value: 'c-1', children: [ { key: 7, value: 'c-1-1', children: null }, { key: 8, value: 'c-1-2', children: null }, ] } ] } ]
直接调用传相对应的参数即可:
parseJson(arr,‘key’,6);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。