JavaScript中数组的AND乘积
我们有一个布尔数组的数组,像这样-
const arr = [[true,false,false],[false,false,false],[false,false,true]];
我们需要编写一个函数,通过使用AND(&&)运算符将每个子数组的相应元素组合在一起,将该数组的数组合并为一维数组。
让我们为该函数编写代码。我们将使用Array.prototype.reduce()函数来实现此目的。
示例
为此的代码将是-
const arr = [[true,false,false],[false,false,false],[false,false,true]]; const andMerge = (arr = []) => { return arr.reduce((acc, val) => { val.forEach((bool, ind) => { acc[ind] = acc[ind] && bool || false; }); return acc; }, []); }; console.log(andMerge(arr));
输出结果
控制台中的输出将为-
[ false, false, false ]