Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

หาค่าสูงสุดของแต่ละ Sub-array ในอาร์เรย์ 2 มิติ - JavaScript

จากอาร์เรย์ 2 มิติ หาค่าสูงสุด (Max) ของแต่ละ Sub-array รวมเป็นอาร์เรย์ใหม่

ตัวอย่าง

[[1, 16, 34, 48], [6, 66, 2, 98], [43, 8, 65, 43], [32, 98, 76, 83], [65, 89, 32, 4]]
→ [48, 98, 65, 98, 89]

ตัวอย่างโค้ด

const arr = [
  [1, 16, 34, 48],
  [6, 66, 2, 98],
  [43, 8, 65, 43],
  [32, 98, 76, 83],
  [65, 89, 32, 4]
];

const constructBig = arr => 
  arr.map(sub => Math.max(...sub));

console.log(constructBig(arr));

ผลลัพธ์

[ 48, 98, 65, 98, 89 ]

คำอธิบาย

  • map วนลูปแต่ละ Sub-array
  • Math.max(...sub) Spread operator ส่งค่าแต่ละตัวเป็นอาร์กิวเมนต์แยก
  • คืนค่าอาร์เรย์ของค่าสูงสุดแต่ละแถว

หมายเหตุ: ผลลัพธ์ตัวที่ 4 คือ 98 (จาก [32, 98, 76, 83]) ไม่ใช่ 83 ตามโค้ดต้นฉบับที่พิมพ์ผิด