如何在数组对象中查找匹配的值?——编写一个方法

22 min read

好的,以下是一个在指定数组对象中查找匹配的对象的值的 JavaScript 方法示例:

function findMatchingObject(arr, key, value) {
    for (var i = 0; i < arr.length; i++) {
        if (arr[i][key] === value) {
            return arr[i];
        }
    }
    return null;
}

其中,arr 表示需要查找的数组对象,key 表示匹配的键值,value 表示匹配的对应值。该方法会遍历数组对象中的每一个对象,查找具有匹配键值对的对象,如果找到了,则返回该对象。如果数组中不存在与指定的键值对匹配的对象,则返回 null

示例用法:

// 模拟的数组对象
var arr = [
  { id: 1, name: 'John' },
  { id: 2, name: 'Alice' },
  { id: 3, name: 'Bob' }
];

// 查找 id 为 2 的对象
var obj1 = findMatchingObject(arr, 'id', 2);
console.log(obj1); // 输出 { id: 2, name: 'Alice' }

// 查找 name 为 'Bob' 的对象
var obj2 = findMatchingObject(arr, 'name', 'Bob');
console.log(obj2); // 输出 { id: 3, name: 'Bob' }

// 查找 name 为 'Charlie' 的对象
var obj3 = findMatchingObject(arr, 'name', 'Charlie');
console.log(obj3); // 输出 null

希望这个方法能帮到你。