-1

我发现很难找出最佳方法来获取多个相同长度的数组并将它们合并为一个真实值数组。所以如果true在索引位置,新数组应该有true,否则就离开false

const array1 = [true, true, false, false, true]
const array = [true, false, false, true, false]
    

输出是:

[true, true, false, true, true]
4

2 回答 2

5

您可以使用map. 它将为您生成新数组。里面map有一些你可以传递的参数,你可以current value使用iteration它们从第二个数组中获取数据,然后放一个OR|| 获得预期输出的条件。

const array1 = [true, true, false, false, true];
const array = [true, false, false, true, false];

const output = array1.map((val,i)=>val || array[i]);

console.log(output);

于 2020-06-29T06:22:16.223 回答
1

您可以使用map()并检查任何一个e OR array[i]是否为true,这里e属于每个元素array1并且分别array[i]表示每个元素。array最后,它会newArray在 map 函数内部进行条件检查。

const array1 = [true, true, false, false, true];
const array = [true, false, false, true, false];
var newArray = array1.map((e, i) => Boolean(e | array[i]));
console.log(newArray)

于 2020-06-29T06:26:14.780 回答