js 数组对象深层查找
时间: 2023-10-09 15:15:18 浏览: 45
要深层查找 JavaScript 数组对象中的元素,可以使用递归函数。以下是一个例子:
```javascript
function deepFind(obj, key, value) {
if (obj instanceof Array) {
for (var i in obj) {
var item = obj[i];
var result = deepFind(item, key, value);
if (result) {
return result;
}
}
} else if (obj instanceof Object) {
if (obj.hasOwnProperty(key) && obj[key] === value) {
return obj;
} else {
for (var k in obj) {
var result = deepFind(obj[k], key, value);
if (result) {
return result;
}
}
}
}
return null;
}
```
这个函数接受三个参数:要查找的对象、要查找的键和值。如果对象是数组,那么遍历数组中的每个元素并递归调用 `deepFind` 函数;如果对象是普通对象,那么遍历对象的每个属性并递归调用 `deepFind` 函数。如果找到了符合要求的元素,就返回该元素,否则返回 `null`。