我有一个函数循环遍历数组,重新排列其对象,并返回结果(不包括当前对象):
// buildings = [{ objectId: '1', objectId: '2', objectId: '3' }]
// currentBuilding = { objectId: '1' }
const result buildings.map(building => {
if (building.objectId === this.currentBuilding.objectId) {
return
}
return {
newField: building.objectId,
}
})
return result
我希望它返回:
此功能将返回:
[{ newField: '2', newField: '3' }]
然而,现在我得到了:
[{ undefined, newField: '2', newField: '3' }]
为什么会这样以及如何解决?
答案 0 :(得分:2)
你不能,但你可以过滤掉有问题的项目:
const result buildings.filter(b => b.objectId !== this.currentBuilding.objectId)
.map(b => ({newField: b.objectId});