Phải định dạng thủ công một số dưới dạng chuỗi tiền tệ có thể là một quá trình tẻ nhạt. Mặc dù điều này đôi khi có thể được thực hiện trong một vài dòng mã, nhưng tốt nhất bạn nên tuân theo một tiêu chuẩn được tiêu chuẩn hóa thay vì tự mã hóa cứng, cộng với việc nhà phát triển viết mã dễ dàng hơn
Trong hướng dẫn này, chúng ta sẽ xem cách định dạng chuỗi tiền tệ trong JavaScript
Định dạng chuỗi dưới dạng tiền tệ với ngôn ngữ
Ngôn ngữ là một tập hợp các tham số chỉ định bất kỳ thứ gì trên máy tính của bạn theo vùng cụ thể
- Cài đặt định dạng số
- Phân loại ký tự, cài đặt chuyển đổi trường hợp
- Cài đặt định dạng ngày giờ
- Cài đặt định dạng tiền tệ
- Cài đặt khổ giấy
- Định dạng ngày trong tuần/ngày đầu tuần
- Đơn vị đo lường
Người dùng Windows biết các tham số ngôn ngữ là Region settings
. Mặt khác, người dùng Linux có thể không biết rằng bạn có thể sử dụng lệnh locale
để kiểm tra các tham số đã nói
Trong JavaScript, cách dễ nhất và phổ biến nhất để định dạng số dưới dạng chuỗi tiền tệ là thông qua phương thức Intl.NumberFormat[]
. Cách tiếp cận này cho phép bạn định dạng số bằng cách sử dụng tham số ngôn ngữ tùy chỉnh - và trong bài viết này, chúng tôi sẽ tập trung vào tiền tệ
Hàm tạo Intl.NumberFormat[]
chấp nhận hai đối số, đối số đầu tiên là chuỗi ngôn ngữ mà chúng tôi xác định ngôn ngữ mà chúng tôi muốn định dạng thành
const price = 1470000.15;
let dollarUSLocale = Intl.NumberFormat['en-US'];
let dollarIndianLocale = Intl.NumberFormat['en-IN'];
console.log["US Locale output: " + dollarUSLocale.format[price]];
console.log["Indian Locale output: " + dollarIndianLocale.format[price]];
kết quả này
1,470,000.15
14,70,000.15
Ở đây, chúng tôi có các biến thể được bản địa hóa của price
, được định dạng dưới dạng một số đơn giản. Mặc dù vậy, có một số tùy chọn mà chúng tôi cũng có thể điều chỉnh để tùy chỉnh thêm quy trình định dạng này
Đối số thứ hai có thể được sử dụng để chỉ định các tùy chọn bạn muốn áp dụng trong khi định dạng. Đây là một đối tượng JavaScript có thể chứa, nhưng không giới hạn ở
style
currency
useGrouping
01,470,000.15 14,70,000.15
Chúng ta hãy xem xét các thuộc tính này một cách riêng lẻ
Phong cách
Trường style
chỉ định loại định dạng bạn muốn sử dụng. Các giá trị có thể bao gồm
2 - Định dạng số thập phân1,470,000.15 14,70,000.15
currency
- Định dạng tiền tệ
4 - Định dạng đơn vị Metric hoặc Imperial1,470,000.15 14,70,000.15
Trong trường hợp của chúng tôi, chúng tôi sẽ chỉ định dạng thành chuỗi currency
Tiền tệ
Sử dụng trường currency
, bạn có thể chỉ định loại tiền tệ cụ thể mà bạn muốn định dạng, chẳng hạn như
1,470,000.15
14,70,000.15
7, 1,470,000.15
14,70,000.15
8 hoặc 1,470,000.15
14,70,000.15
9Hãy định dạng price
của chúng ta thành các loại tiền tệ khác nhau
Tùy chọn bổ sung
Trường useGrouping
là trường boolean cho phép bạn nhóm số bằng dấu phẩy [hoặc dấu chấm đối với một số ngôn ngữ]. Theo mặc định, nó được đặt thành Region settings
2, như chúng ta có thể thấy trong kết quả đầu ra ở trên
Hãy tắt nó đi
Trường
1,470,000.15
14,70,000.15
0 cho phép bạn đặt số chữ số có nghĩa cho giá. Điều này có thể được sử dụng để làm tròn biến giá của bạn dựa trên số chữ số có nghĩa mà bạn đã đặtCác chữ số có nghĩa, theo thuật ngữ đơn giản hóa, là các chữ số biểu diễn của một số có bất kỳ trọng số nào về độ chính xác
Trớ trêu thay, độ chính xác của một số được định nghĩa là số chữ số có nghĩa của nó
Các chữ số có nghĩa bao gồm
Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó
- Tất cả các chữ số khác không
- Các số không xuất hiện ở bất kỳ đâu giữa hai chữ số khác không
- Các số không ở bên phải của tất cả các chữ số khác không, nhưng chỉ khi chúng biểu thị độ chính xác cao hơn
Các chữ số không có nghĩa bao gồm
- Số không ở bên trái của tất cả các chữ số khác không
- Các số 0 ở bên phải của tất cả các chữ số khác 0 không biểu thị độ chính xác
Ví dụ: trong số Region settings
4 chỉ có 4 chữ số có nghĩa nếu độ chính xác của chúng tôi là 4 chữ số có nghĩa [Region settings
5]. Tuy nhiên, cũng có thể có 5 chữ số có nghĩa nếu độ chính xác của chúng tôi là 5 chữ số có nghĩa [Region settings
6]
một ví dụ đã được biểu diễn ở dưới
Phần kết luận
Trong hướng dẫn này, chúng ta đã tìm hiểu cách định dạng một số dưới dạng chuỗi tiền tệ trong JavaScript. Chúng tôi đã sử dụng phương pháp Intl.NumberFormat[]
để thực hiện việc này, với ngôn ngữ mong muốn và một số cài đặt mà chúng tôi có thể sử dụng để tùy chỉnh quy trình định dạng