Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中数组的逻辑OR_Javascript - Fatal编程技术网

javascript中数组的逻辑OR

javascript中数组的逻辑OR,javascript,Javascript,我想在javascript中对数组执行逻辑OR操作,以便对数组a和b let a = [0,1,0] let b = [0,0,5] 给我 OR(a, b) [0,1,5] 实现或的有效且惯用的方法是什么?假设数组总是具有相同的长度,请使用.map和|: const OR=(a,b)=>a.map((aItem,i)=>aItem|b[i]); 设a=[0,1,0] 设b=[0,0,5] console.log( 或(a,b) );只需将|运算符与map方法结合使用,方法是将回调函数作为参

我想在javascript中对数组执行逻辑OR操作,以便对数组
a
b

let a = [0,1,0]
let b = [0,0,5]
给我

OR(a, b)
[0,1,5]

实现
的有效且惯用的方法是什么?

假设数组总是具有相同的长度,请使用
.map
|

const OR=(a,b)=>a.map((aItem,i)=>aItem|b[i]);
设a=[0,1,0]
设b=[0,0,5]
console.log(
或(a,b)

);
只需将
|
运算符与
map
方法结合使用,方法是将回调函数作为参数传递

设a=[0,1,0]
设b=[0,0,5]
设c=a.map((项,索引)=>item | | b[index]);

控制台日志(c)
您可以通过使用映射和
函数来减少所需的数组

const or=(a,b)=>a | | b,
mapped=fn=>(a,b)=>a.map((v,i)=>fn(v,b[i]);
变量a=[0,1,0],
b=[0,0,5],
c=[a,b].reduce(映射的(或));
控制台日志(c)