我有如下所示的数组数组。
[["a",0,0,0],["b",30,20,10],["c",40,50,60],["d",0,0,0],...]
如果每个数组内的数字总和为零,我想删除一些数组并得到以下返回。
[["b",30,20,10],["c",40,50,60],...]
谁能告诉我如何在 JavaScript 中实现逻辑来实现这一点?
最佳答案
过滤
数组的数组,通过遍历每个数组并使用reduce
跟踪数组中数字的总和:
const input = [
["a", 0, 0, 0],
["b", 30, 20, 10],
["c", 40, 50, 60],
["d", 0, 0, 0],
['e', 30, -30]
];
console.log(
input.filter((arr) => (
arr.reduce((a, item) => (
typeof item === 'number'
? a + item
: a
), 0)
))
);
关于javascript - 如果数组总和为 0,如何实现逻辑,从 JavaScript 中的数组中删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51576562/