我有一个类似的问题,这个用户在这里:Find object by id in an array of JavaScript objects
我想在数组ob对象中按ID查找一个对象。在MDN中有一个使用Array.find()的例子。
我的问题是,对象可以为空。下面是一个例子:
var myArray = [
{id:1, name:"bob"},
{id:2, name:"dan"},
{},
]
// grab the Array item which matchs the id "6"
var item = myArray.find(item => item.id === 6);
// print
console.log(item.name);
数组中的第三个对象由于某些错误而为空。因此,该项为空,因此item.id失败。我如何防止这种情况?
4条答案
按热度按时间vbopmzt11#
不确定我是否理解正确,你是说如果有一个空对象而不是
{}
,它在这种情况下失败,如果是这样,那么你可以在你的条件下使用null safe operator,比如i=> i?.id
e37o9pze2#
请使用可选链接(?.)
https://stackoverflow.com/a/63498539/10562084
7dl7o3gd3#
在记录
item.name
之前,必须检查该项目是否存在。ttcibm8c4#
这里,是你的问题的简单解决方案。
//在数组中查找
//日志名称