const newDate = map(items.result, (obj => {
if (isDateWithinRage(obj.date_from)) {
return {
"date": obj.join_date,
"name": obj.student.name
}
}
}))
if语句产生了类似的东西
[Object, Object, Object, Object, Object, undefined, undefined, undefined, undefined, Object, Object, Object]
如何修复未定义的部分?我想跳过迭代。
答案 0 :(得分:3)
假设map
是Array.prototype.map
的某种变体,map
会产生从输入数组到输出数组的值的1:1映射。
如果要从输入数组中排除值,请使用Array.prototype.filter
:
const newDate =
items
.result
.filter(obj => isDateWithinRange(obj.date_from))
.map(obj => ({
date: obj.join_date,
name: obj.student.name
}));
此示例假定items.result
是一个数组