javascript - 在数组中查找不存在的对象,它返回不一致的值而不是未定义。为什么?
问题描述
当我尝试在数组中查找不存在的对象元素时,它显示的结果不一致而不是 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' }
解决方案
使用以下代码段。
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
推荐阅读
- python - matplotlib hist:如何绘制 y_axis 等于 100% 的堆积历史
- javascript - 如何更改此代码中滑块的布局?
- linux - 从许多 LARGE 文件中删除重复的行
- java - 对 JTable 使用 AbstractTableModel 时,换行符 (\n) 不起作用
- matlab - 如何使用逻辑条件对数组进行子集化?
- javascript - “无法读取未定义 (React.js) 的属性‘地图’”
- javascript - 我在 jquery 中测试鼠标是否按下的函数总是返回 false
- angular - 模板上的只读函数会减慢角度吗?
- apache-royale - Royale 浏览器项目的 Moonshine 2.2.0 编译错误
- node.js - 如何在异步函数中获取价值?