我有一个对象数组,并且只希望在数组中不存在新对象时添加一个新对象。数组中的对象有两个属性,名称和imageURL,而两个对象只有在它们的名称相同的情况下才是相同的,因此我只想比较它们的名称,以检查对象是否存在,如何将其作为一个条件来实现?
发布于 2020-05-06 19:11:53
因为你没有提到使用的变量。我将假设'arr‘作为数组,而'person’作为要检查的新对象。
const arr = [{name: 'John', imageURL:'abc.com'},{name: 'Mike', imageURL:'xyz.com'}];
const person = {name: 'Jake', imageURL: 'hey.com'};
if (!arr.find(
element =>
element.name == person.name)
) {
arr.push(person);
};如果名称不相同,则person对象不会被推入数组中。
发布于 2020-05-06 19:05:55
您可以使用Array.find
let newObj={ name:'X',imageURL:'..../'}
if(!array.find(x=> x.name == newObj.name))
array.push(newObj)https://stackoverflow.com/questions/61643231
复制相似问题