Hàm toFixed() trong JavaScript

Hàm toFixed() trong JavaScript
Hàm toFixed() trong JavaScript

Chức năng của Hàm toFixed() trong JavaScript

Hàm toFixed() trong JavaScript dùng để làm tròn số thập phân của một biến số sau đó trả kết quả về kiểu dữ liệu string, bạn có thể quy định phía sau dấu chấm có bao nhiêu số hoặc có thể bỏ dấu chấm.

Cú pháp của Hàm toFixed() trong JavaScript

sothapphan.toFixed(solamtron);

sothapphan: Số thập phần gắn trực tiếp hoặc gắn dán tiếp thông qua biến.

solamtron: là một số nguyên lớn hơn hoặc bằng 0 hoặc để trống.

Code Hàm toFixed() trong JavaScript

35.727.toFixed(2);
<script>
document.write("<b>toFixed() 35.727</b><br>");
var bienso = 35.727;
document.write(bienso.toFixed()+"<br>"); // Kết quả: 36
document.write(bienso.toFixed(0)+"<br>"); // Kết quả: 36
document.write(bienso.toFixed(1)+"<br>"); // Kết quả: 35.7
document.write(bienso.toFixed(2)+"<br>"); // Kết quả: 35.73
document.write(bienso.toFixed(3)+"<br>"); // Kết quả: 35.727
document.write(bienso.toFixed(4)+"<br>"); // Kết quả: 35.7270
document.write(bienso.toFixed(5)+"<br>"); // Kết quả: 35.72700
document.write("<b>toFixed() 35</b><br>");
var biensohai = 35;
document.write(biensohai.toFixed()+"<br>"); // Kết quả: 35
document.write(biensohai.toFixed(0)+"<br>"); // Kết quả: 35
document.write(biensohai.toFixed(1)+"<br>"); // Kết quả: 35.0
document.write(biensohai.toFixed(2)+"<br>"); // Kết quả: 35.00
</script>

Kết quả:

toFixed() 35.727
36
36
35.7
35.73
35.727
35.7270
35.72700
toFixed() 35
35
35
35.0
35.00

Chạy Thử

Những lưu ý quan trọng khi sử dụng toFixed() trong JavaScript

Khi sử dụng toFixed(), ngoài việc xác định số chữ số thập phân cần hiển thị, bạn cũng nên chú ý đến kiểu dữ liệu và cách JavaScript xử lý số thực. Những điểm này đặc biệt quan trọng khi kết quả tiếp tục được dùng cho các phép tính hoặc xử lý dữ liệu khác.

toFixed() trả về chuỗi thay vì kiểu số

Một đặc điểm dễ gây nhầm lẫn của toFixed() là kết quả nhận được luôn có kiểu string, ngay cả khi giá trị ban đầu là một số. Vì vậy, không nên sử dụng trực tiếp kết quả của phương thức này cho các phép tính nếu chưa kiểm tra hoặc chuyển đổi kiểu dữ liệu.

const price = 125.678;
const result = price.toFixed(2);

console.log(result); // "125.68"
console.log(typeof result); // "string"

Nếu cần tiếp tục tính toán với kết quả đã làm tròn, có thể chuyển chuỗi về số bằng Number() hoặc cách chuyển đổi số phù hợp với trường hợp sử dụng.

const price = 125.678;
const roundedPrice = Number(price.toFixed(2));

console.log(roundedPrice); // 125.68
console.log(typeof roundedPrice); // "number"

toFixed() có thể cho kết quả bất ngờ với số thập phân

JavaScript biểu diễn nhiều số thập phân bằng dạng số thực nhị phân, nên một số giá trị tưởng như đơn giản có thể không được lưu trữ chính xác tuyệt đối. Vì vậy, trong một số trường hợp, kết quả của toFixed() có thể khác với cách bạn dự đoán khi nhìn vào số ban đầu.

const value = 2.55;

console.log(value.toFixed(1));

Do đó, toFixed() phù hợp để định dạng số khi hiển thị, chẳng hạn như giá tiền, tỷ lệ phần trăm hoặc số liệu cần số chữ số thập phân cố định. Với các phép tính yêu cầu độ chính xác cao, không nên xem toFixed() là giải pháp duy nhất để xử lý sai số số thực.

Cách chuyển kết quả toFixed() về kiểu số

Nếu mục đích của bạn là lấy một giá trị số đã được làm tròn thay vì chuỗi dùng để hiển thị, hãy chuyển kết quả của toFixed() về kiểu number.

const amount = 89.4567;
const result = Number(amount.toFixed(2));

console.log(result); // 89.46

Cách này giúp kết quả có thể tiếp tục tham gia vào các phép tính số học mà không bị giữ ở dạng chuỗi. Tuy nhiên, nếu cần hiển thị đúng số chữ số thập phân, nên giữ nguyên kết quả của toFixed() dưới dạng chuỗi thay vì chuyển đổi lại thành số.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Hàm toFixed() trong JavaScript.

  • 0 Bình luận
CEO Bùi Tấn Lực | Founder Web Mới
Bùi Tấn Lực
Tìm hiểu về CEO Bùi Tấn Lực, Founder Web Mới với nhiều năm kinh nghiệm trong lĩnh vực phát triển website, SEO và chia sẻ kiến thức công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Hàm toFixed() trong JavaScript
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !