首页 > 解决方案 > 在数组中查找不存在的对象,它返回不一致的值而不是未定义。为什么?

问题描述

当我尝试在数组中查找不存在的对象元素时,它显示的结果不一致而不是 undefined ..,为什么?

const a = [{ id: 1, name: '1' }, { id: 2, name: '2' }, { id: 3, name: '3' }, { id: 4, name: '4' }]
const b = a.find(result => result.id = 100)
console.log(b)


// result { id: 100, name: '1' }

标签: javascriptarraysecmascript-6javascript-objects

解决方案


使用以下代码段。

const a = [{ id: 1, name: '1' }, { id: 2, name: '2' }, { id: 3, name: '3' }, { id: 4, name: '4' }];
const b = a.find(result => result.id === 100);
console.log(b);

你的错误是你使用=而不是===在 Array.find


推荐阅读