Sử dụng phương thức toFixed() của đối tượng Number.
Cú pháp
number.toFixed(digits)
digits: Số chữ số sau dấu phẩy (0-20, mặc định 0).- Trả về string (chuỗi), không phải number.
- Làm tròn theo quy tắc "round half up" (5 lên).
Ví dụ
<!DOCTYPE html>
<html>
<body>
<script>
var num = 488.234;
document.write("toFixed(0): " + num.toFixed(0) + "<br>"); // "488"
document.write("toFixed(1): " + num.toFixed(1) + "<br>"); // "488.2"
document.write("toFixed(2): " + num.toFixed(2) + "<br>"); // "488.23"
document.write("toFixed(3): " + num.toFixed(3) + "<br>"); // "488.234"
// Chuyển về number nếu cần tính toán
var so = Number(num.toFixed(1)); // 488.2 (number)
</script>
</body>
</html>
Các phương thức làm tròn khác:
| Phương thức | Mô tả | Trả về |
|---|---|---|
toFixed(d) | Làm tròn cố định d chữ số thập phân | String |
toPrecision(p) | Tổng số chữ số có nghĩa (p) | String |
Math.round(x) | Làm tròn nguyên gần nhất | Number |
Math.floor(x) | Làm tròn xuống (trừ) | Number |
Math.ceil(x) | Làm tròn lên (cộng) | Number |
Math.trunc(x) | Cắt phần thập phân | Number |
Lưu ý:
toFixed()trả về string → cầnNumber()hoặc+để chuyển về number nếu tiếp tục tính toán.- Với số âm:
Math.round(-1.5) === -1(làm tròn về 0),Math.floor(-1.5) === -2. - Floating point precision:
(1.005).toFixed(2)cho"1.00"(do binary float). Dùng thư việndecimal.jscho tiền tệ.