ใช้เมธอด reduce() ใน JavaScript เพื่อนำฟังก์ชันไปประยุกต์กับค่าสองค่าของอาร์เรย์จากซ้ายไปขวา (left-to-right) จนเหลือค่าเดียว (single value)
พารามิเตอร์:
- callback — ฟังก์ชันที่รันสำหรับแต่ละค่าในอาร์เรย์
- initialValue (optional) — ค่าเริ่มต้นสำหรับการเรียก callback ครั้งแรก
ตัวอย่าง
ลองรันโค้ดด้านล่างเพื่อเรียนรู้การทำงานกับเมธอด reduce() ใน JavaScript:
<html>
<head>
<title>JavaScript Array reduce Method</title>
</head>
<body>
<script>
var total = [0, 1, 2, 3].reduce(function(a, b){ return a + b; });
document.write("total is : " + total );
</script>
</body>
</html>
โค้ดนี้คำนวณ 0 + 1 + 2 + 3 = 6 (เริ่มจากซ้ายสุด) ผลลัพธ์ total is : 6 เมธอด reduce() เป็นเมธอดมาตรฐาน ES5 รองรับทุกเบราว์เซอร์สมัยใหม่ ใช้สำหรับรวมค่า (sum), หาค่าสูงสุด/ต่ำสุด, รวมออบเจ็กต์, flatten array ฯลฯ