1.根据name查找出对应id
使用数组的 find
方法来根据对象的某个属性(如名称)查找对应的对象,并获取该对象的 id
属性。
2.find
方法
const array = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Charlie' }
];
使用 find
方法来查找具有特定名称的对象,并获取其 id
:
function findIdByName(array, name) {
const obj = array.find(item => item.name === name);
return obj ? obj.id : null; // 如果找到对象,返回其id,否则返回null
}
// 示例使用
const nameToFind = 'Bob';
const id = findIdByName(array, nameToFind);
console.log(id); // 输出: 2
find
方法会遍历数组中的每个对象,并返回第一个满足条件(即 item.name === name
)的对象。如果找到了这样的对象,我们就返回它的 id
属性;如果没有找到,则返回 null。
3. filter
方法
filter
方法会返回所有满足条件的对象,然后 map
方法会提取这些对象的 id
属性并返回一个新的数组。
function findIdsByName(array, name) {
const objs = array.filter(item => item.name === name);
return objs.map(obj => obj.id); // 返回所有匹配对象的id数组
}
// 示例使用
const ids = findIdsByName(array, 'Alice');
console.log(ids); // 输出: [1]