ได้รับอาร์เรย์ของอาร์เรย์ ซึ่งแต่ละอันมีชุดตัวเลข เราต้องเขียนฟังก์ชันที่คืนค่าอาร์เรย์ที่แต่ละรายการเป็นผลรวมของทุกรายการในซับอาร์เรย์ที่ตรงกัน
ตัวอย่างเช่น:
ถ้าอาร์เรย์อินพุตคือ:
const numbers = [ [1, 2, 3, 4], [5, 6, 7], [8, 9, 10, 11, 12] ];
เอาต์พุทของฟังก์ชันควรเป็น:
const output = [10, 18, 50];
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน:
ตัวอย่างโค้ด
const numbers = [
[1, 2, 3, 4],
[5, 6, 7],
[8, 9, 10, 11, 12]
];
const sum = arr => arr.reduce((acc, val) => acc + val);
const sumSubArray = arr => {
return arr.reduce((acc, val) => {
const s = sum(val);
acc.push(s);
return acc;
}, []);
};
console.log(sumSubArray(numbers));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้:
[10, 18, 50]