我有一个带有map reduce的JavaScript示例,用于在转换它们之后从数组中删除项目。有没有更简单的方法来实现这一点,因为它似乎有点复杂
我put it in a JSFiddle here,这是地图缩小部分:
var after = before.map(function (item) {
if (item.keep) {
return {
z: item.a
};
} else {
return undefined;
}
}).reduce(function (prev, item) {
if (item) {
if ($.isArray(prev)) {
prev.push(item);
return prev;
} else if (prev) {
return [prev, item];
} else {
return [item];
}
} else {
if ($.isArray(prev)) {
return prev;
} else if (prev) {
return [prev];
} else {
return prev;
}
}
});
答案 0 :(得分:7)