เรามีอาร์เรย์บูลีนแบบนี้ -
const arr =[[จริง,เท็จ,เท็จ],[เท็จ,เท็จ,เท็จ],[เท็จ,เท็จ,จริง]];
เราจำเป็นต้องเขียนฟังก์ชันที่รวมอาร์เรย์ของอาร์เรย์นี้เป็นอาร์เรย์หนึ่งมิติโดยการรวมองค์ประกอบที่สอดคล้องกันของแต่ละอาร์เรย์ย่อยโดยใช้ตัวดำเนินการ OR (||)
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน เราจะใช้ฟังก์ชัน Array.prototype.reduce() เพื่อบรรลุสิ่งนี้
ตัวอย่าง
const arr =[[true,false,false],[false,false,false],[false,false,true]];const orMerge =arr => { ส่งคืน arr.reduce ((acc, val) => { val.forEach((bool, ind) => acc[ind] =acc[ind] || bool); return acc; }, []);};console.log(orMerge(arr));ก่อน>ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
[ จริง เท็จ จริง ]