Я хочу объединить этот массив с помощью или || оператор
[[true,false,false],[false,false,false],[false,false,true]]
так что выход
[true,false,true]
возможно ли это с помощью карты или сокращения или аналогичного?
Изменение: Извините за непонятный вопрос - да, это было для вертикального объединения всех вспомогательных массивов. Итак, следующий ввод:
[[true,false,false],[false,false,false],[false,false,true],[false,false,true]]
будет производить тот же результат:
[true,false,true]
Вы можете уменьшить массивы с отображением одинаковых значений индекса.
var array = [[true, false, false], [false, false, false], [false, false, true]],
result = array.reduce((a, b) => a.map((c, i) => b[i] || c));
console.log(result);
Вам действительно не нужно ||
когда вы используете some
:
var array = [[true, false, false], [false, false, false], [false, false, true]];
var result = array[0].map( (_, i) => array.some(a => a[i]));
console.log(result);
Boolean
качестве cb.
вы можете сделать это следующим образом
let arr = [[true,false,false],[false,false,false],[false,false,true]];
arr = arr.map(function(element){
return element.reduce(function(a, b){
return (a|b);
})
})
console.log(arr);
true
былоa[0][0] || a[0][1] || a[0][2]
илиa[0][0] || a[1][0] || a[2][0]
? 2. Что вы пытались решить проблему?