Hàm reduce() tính tổng trong JavaScript

Hàm reduce() tính tổng trong JavaScript

Hàm reduce() tính tổng trong JavaScript

Tự code rồi chạy thử... Chạy Thử
<!DOCTYPE html>
<html>
<head>
<title>Hàm reduce() tính tổng trong JavaScript</title>
</head>
<body>

<h1>Hàm reduce() tính tổng trong JavaScript</h1>
<p>Dùng để tính tổng các giá trị trong một mảng đơn giản hoặc mảng đa chiều, làm phẳng mảng, thay đổi cấu trúc mảng,...</p>

<script>
// Tính tổng một mảng đơn giản
document.write("<b>Tính tổng một mảng đơn giản</b><br>");
var mang = [10, 15,25 ];
// Biến chứa tổng các giá trị
var initialValue= 0; // Giá trị ban đầu, nếu giá trị ban đầu là 5 thì total khởi tạo là 5
var tong  = mang.reduce(function(total, currentValue, currentIndex, arr) {
    document.write("Giá trị trả lại (total): " + total+"<br>"); // Giá trị trả lại của hàm return, nếu initialValue bằng 5 thì total khởi tạo là 5
    document.write("Giá trị (currentValue): " + currentValue+"<br>"); // Giá trị của phần tử trong mảng
    document.write("Chỉ mục (currentIndex): " + currentIndex+"<br>"); // Vị trí index của phần tử trong mảng
    document.write("Mảng (arr): " + arr+"<br>");
    document.write("------------------------<br>");
    return total + currentValue; // total cuối cùng là 25 + currentValue là 25 =  50.
    // mỗi lần lặp từng phần tử sẽ lấy total + currentValue, kết quả lần lặp 1 sẽ trả về total cho lần lặp 2 rồi lấy total đó cộng tiếp cho currentValue, cứ thế cộng ra tổng
},initialValue);
document.write("Tổng giá trị: "+tong);
document.write("<br>");

// Tính lương tuần mảng đa chiều
document.write("<b>Tính lương tuần mảng đa chiều</b><br>");
var thongtin = [{ ten: "Lực", luong: 500000,songay: 5}, { ten: "Vân", luong: 600000,songay: 5}, { ten: "Dung", luong: 600000,songay: 4} ];
// Tính tổng số tuổi
let tongluong = thongtin.reduce(function(total, currentValue) {
    return total + currentValue.songay * currentValue.luong;
}, 0);

// In ra tổng tiền của giỏ hàng
document.write(tongluong);

</script>
</body>
</html>
Hàm reduce() tính tổng trong JavaScript nằm trong bài viết Hàm reduce() trong JavaScript