Viết hàm calculator() nhận ký tự phép toán (+, -, *, /) làm đối số đầu, tiếp theo là các số. Thực hiện phép toán trên các số đó và trả về kết quả.
Nếu phép là cộng/nhân: thực hiện với mọi phần tử. Nếu trừ/chia: coi phần tử đầu là trung tính, trừ/chia các phần tử còn lại từ nó.
Ví dụ
const calculator = (operation, ...numbers) => {
const legend = '+-*/';
const ind = legend.indexOf(operation);
return numbers.reduce((acc, val) => {
switch (operation) {
case '+': return acc + val;
case '-': return acc - val;
case '*': return acc * val;
case '/': return acc / val;
}
});
};
console.log(calculator('+', 12, 45, 21, 12, 6));
console.log(calculator('-', 89, 45, 21, 12, 6));
console.log(calculator('*', 12, 45, 21, 12, 6));
console.log(calculator('/', 189000, 45, 7, 12, 4));Kết quả
Đầu ra trong console sẽ là:
96 5 816480 12.5