Используйте JavaScript Map Reduce для удаления элементов из массива.
У меня есть пример JavaScript с map, чтобы удалить элементы из массива после их преобразования. Есть ли более простой метод для достижения этой цели, так как он кажется немного сложным
Я поместил это в JSFiddle здесь, и вот часть уменьшения карты:
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;
}
}
});
1 ответ
Решение
Ты имеешь в виду .filter
?
var after = before.filter(function (item) {
return item.keep;
});
Тогда вы можете еще .map
это если хочешь / надо.