Object.prototype.toLocaleString()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Phương thức toLocaleString() của các instance Object trả về một chuỗi đại diện cho đối tượng này. Phương thức này được thiết kế để các đối tượng dẫn xuất ghi đè cho mục đích đặc trưng theo ngôn ngữ.
Try it
const date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
console.log(date.toLocaleString("ar-EG"));
// Expected output: "٢٠/١٢/٢٠١٢ ٤:٠٠:٠٠ ص"
const number = 123456.789;
console.log(number.toLocaleString("de-DE"));
// Expected output: "123.456,789"
Cú pháp
toLocaleString()
Tham số
Không có. Tuy nhiên, tất cả các đối tượng ghi đè phương thức này đều được kỳ vọng nhận tối đa hai tham số, tương ứng với locales và options, chẳng hạn như Number.prototype.toLocaleString. Các vị trí tham số không nên được dùng cho bất kỳ mục đích nào khác.
Giá trị trả về
Giá trị trả về của việc gọi this.toString().
Mô tả
Tất cả các đối tượng kế thừa từ Object.prototype (tức là tất cả trừ đối tượng có prototype null) đều kế thừa phương thức toLocaleString(). toLocaleString của Object trả về kết quả của việc gọi this.toString().
Hàm này được cung cấp để cho các đối tượng có phương thức toLocaleString chung, mặc dù không phải tất cả đều sử dụng nó. Trong ngôn ngữ cốt lõi, các đối tượng dựng sẵn sau ghi đè toLocaleString để cung cấp định dạng đặc trưng theo ngôn ngữ:
Ví dụ
>Sử dụng phương thức toLocaleString() cơ sở
Phương thức toLocaleString() cơ sở chỉ đơn giản gọi toString().
const obj = {
toString() {
return "My Object";
},
};
console.log(obj.toLocaleString()); // "My Object"
Ghi đè toLocaleString() của Array
Array.prototype.toLocaleString() được dùng để in các giá trị mảng dưới dạng chuỗi bằng cách gọi phương thức toLocaleString() của từng phần tử và nối kết quả với dấu phân cách đặc trưng theo ngôn ngữ. Ví dụ:
const testArray = [4, 7, 10];
const euroPrices = testArray.toLocaleString("fr", {
style: "currency",
currency: "EUR",
});
// "4,00 €,7,00 €,10,00 €"
Ghi đè toLocaleString() của Date
Date.prototype.toLocaleString() được dùng để in ra biểu diễn ngày phù hợp hơn cho các ngôn ngữ cụ thể. Ví dụ:
const testDate = new Date();
// "Fri May 29 2020 18:04:24 GMT+0100 (British Summer Time)"
const deDate = testDate.toLocaleString("de");
// "29.5.2020, 18:04:24"
const frDate = testDate.toLocaleString("fr");
// "29/05/2020, 18:04:24"
Ghi đè toLocaleString() của Number
Number.prototype.toLocaleString() được dùng để in ra biểu diễn số phù hợp hơn cho các ngôn ngữ cụ thể, ví dụ với dấu phân cách đúng. Ví dụ:
const testNumber = 2901234564;
// "2901234564"
const deNumber = testNumber.toLocaleString("de");
// "2.901.234.564"
const frNumber = testNumber.toLocaleString("fr");
// "2 901 234 564"
Đặc tả
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-object.prototype.tolocalestring> |