查找数组中对象里的两个值 某一个相同的数据
时间: 2024-02-23 14:58:18 浏览: 95
可以使用两重循环来遍历数组中的所有对象,对于每一个对象,再遍历其后面的对象,查找是否有另一个对象中与当前对象相同的属性值。具体的实现可以参考以下代码:
```javascript
function findSameValue(arr, prop) {
for (let i = 0; i < arr.length - 1; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i][prop] === arr[j][prop]) {
return [arr[i], arr[j]];
}
}
}
return null;
}
// 示例数据
const arr = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Charlie' },
{ id: 4, name: 'David' },
{ id: 5, name: 'Eva' },
{ id: 6, name: 'Alice' },
];
// 查找name属性相同的对象
const result = findSameValue(arr, 'name');
console.log(result); // [{ id: 1, name: 'Alice' }, { id: 6, name: 'Alice' }]
```
在上面的代码中,我们定义了一个 `findSameValue` 函数,接收一个数组和一个属性名作为参数,返回数组中第一个找到的属性值相同的两个对象,如果没有找到,则返回 `null`。在函数内部,我们使用两重循环遍历数组中的所有对象,如果找到了属性值相同的两个对象,则直接返回这两个对象。
阅读全文