js通过值获取数组对象对应索引

思考怎么获取 id 为 3 的索引呢?

let arry = [
  { id: '1', name: '张三' },{ id: '2', name: '李四' },
  { id: '3', name: '王五' },{ id: '4', name: '赵六' },
];

一、通过indexOf匹配map返回

let index = arry.map((item) => item.id).indexOf('3');
console.info(index); //返回值2

二、运用findIndex

let index = arry.findIndex((item) => item.id == '3');
console.info(index); //返回值2

两种方式的区别:

map的遍历是不可中断的,不管是否找到匹配对象都会完整的遍历整个数组对象;

findIndex找到匹配对象后就返回结果,不会继续遍历;

猜你喜欢

转载自blog.csdn.net/u012320487/article/details/123840469