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

เก็บองค์ประกอบอาร์เรย์ที่มากกว่าผลรวมสะสมด้วย reduce() ใน JavaScript

เราต้องเขียนฟังก์ชันที่รับอาร์เรย์ตัวเลข ฟังก์ชันควรคืนค่าอาร์เรย์ใหม่ที่มีองค์ประกอบจากอาร์เรย์ต้นฉบับที่มีค่ามากกว่าผลรวมสะสมขององค์ประกอบทั้งหมดจนถึงจุดนั้น ต้องแก้ปัญหานี้ด้วย 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]