ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลข arr เป็นอาร์กิวเมนต์แรกและตัวเลข num (num <=length of array) เป็นอาร์กิวเมนต์ที่สอง
ฟังก์ชันของเราควรเพิ่มแต่ละ subarray ที่ต่อเนื่องกันของความยาว num ของ array arr เพื่อสร้างองค์ประกอบที่สอดคล้องกันของอาร์เรย์ใหม่และสุดท้ายส่งคืนอาร์เรย์ใหม่นั้น
ตัวอย่างเช่น หากอินพุตของฟังก์ชันคือ −
const arr = [1, 2, 3, 4, 5, 6]; const num = 2;
จากนั้นผลลัพธ์ควรเป็น−
const output = [3, 5, 7, 9, 11];
คำอธิบายผลลัพธ์
เพราะ 1 + 2 =3, 2 + 3 =5 เป็นต้น...
ตัวอย่าง
ต่อไปนี้เป็นรหัส−
const arr = [1, 2, 3, 4, 5, 6]; const num = 2; const accumulateArray = (arr = [], num = 1) => { const res = []; let sum = 0, right = 0, left = 0; for(; right < num; right++){ sum += arr[right]; }; res.push(sum); while(right < arr.length){ sum -= arr[left]; sum += arr[right]; right++; left++; res.push(sum); }; return res; }; console.log(accumulateArray(arr, num));
ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล-
[3, 5, 7, 9, 11]