เราต้องเขียนฟังก์ชันที่รับอาร์เรย์ตัวเลข ฟังก์ชันควรคืนค่าอาร์เรย์ใหม่ที่มีองค์ประกอบจากอาร์เรย์ต้นฉบับที่มีค่ามากกว่าผลรวมสะสมขององค์ประกอบทั้งหมดจนถึงจุดนั้น ต้องแก้ปัญหานี้ด้วย Array.prototype.reduce()
ตัวอย่าง
โค้ดสำหรับฟังก์ชันนี้:
const arr = [1, 2, 30, 4, 5, 6]; const retainGreaterElements = arr => { let res = []; arr.reduce((acc, val) => { return (val > acc && res.push(val), acc + val); }, 0); return res; } console.log(retainGreaterElements(arr));ผลลัพธ์
ผลลัพธ์ในคอนโซล:
[1, 2, 30]