เรามีอาร์เรย์ตัวเลขแบบนี้
const arr = [1, 1, 5, 2, -4, 6, 10];
เราต้องเขียนฟังก์ชันที่คืนอาร์เรย์ใหม่ ขนาดเท่าเดิม แตแต่ละสมาชิกเป็นผลรวมของสมาชิกทั้งหมดจนถึงจุดนั้น
ดังนั้น ผลลัพธ์ควรเป็น
const output = [1, 2, 7, 9, 5, 11, 21];
เขียนฟังก์ชัน partialSum() โค้ดเต็ม
ตัวอย่าง
const arr = [1, 1, 5, 2, -4, 6, 10];
const partialSum = (arr) => {
const output = [];
arr.forEach((num, index) => {
if(index === 0){
output[index] = num;
}else{
output[index] = num + output[index - 1];
}
});
return output;
};
console.log(partialSum(arr));
เราวนลูปผ่านอาร์เรย์ และกำหนดสมาชิกของอาร์เรย์ output ค่าใหม่ทุกครั้ง ค่าเป็นผลรวมของตัวเลขปัจจุบันและตัวก่อนหน้า
ผลลัพธ์
ผลลัพธ์ของโค้ดนี้จะเป็น
[ 1, 2, 7, 9, 5, 11, 21 ]