Intl.NumberFormat.prototype.formatRange()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2023.
Phương thức formatRange() của các instance Intl.NumberFormat định dạng một khoảng số theo locale và tùy chọn định dạng của đối tượng Intl.NumberFormat này.
Cú pháp
formatRange(startRange, endRange)
Tham số
startRange-
Một
Number,BigInt, hoặc chuỗi để định dạng. Chuỗi được phân tích cú pháp theo cách tương tự như trong chuyển đổi số, ngoại trừformatRange()sẽ dùng giá trị chính xác mà chuỗi đại diện, tránh mất độ chính xác trong quá trình chuyển đổi ngầm định thành số. endRange
Giá trị trả về
Chuỗi đại diện cho khoảng số đã cho được định dạng theo locale và tùy chọn định dạng của đối tượng Intl.NumberFormat này. Nếu giá trị đầu và cuối được định dạng thành cùng một chuỗi, đầu ra sẽ chỉ chứa một giá trị duy nhất, có thể được thêm tiền tố ký hiệu "xấp xỉ bằng" (ví dụ: "~$3"). Việc chèn ký hiệu này chỉ phụ thuộc vào cài đặt locale và được chèn ngay cả khi startRange === endRange.
Ngoại lệ
RangeError-
Được ném ra nếu
startRangehoặcendRangelàNaNhoặc chuỗi không thể chuyển đổi. TypeError-
Được ném ra nếu
startRangehoặcendRangelà undefined.
Mô tả
Hàm getter formatRange định dạng một khoảng số thành chuỗi theo locale và tùy chọn định dạng của đối tượng Intl.NumberFormat mà nó được gọi từ đó.
Ví dụ
>Sử dụng formatRange
Dùng hàm getter formatRange để định dạng một khoảng giá trị tiền tệ:
const nf = new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
maximumFractionDigits: 0,
});
console.log(nf.formatRange(3, 5)); // "$3 – $5"
// Note: the "approximately equals" symbol is added if
// startRange and endRange round to the same values.
console.log(nf.formatRange(2.9, 3.1)); // "~$3"
const nf = new Intl.NumberFormat("es-ES", {
style: "currency",
currency: "EUR",
maximumFractionDigits: 0,
});
console.log(nf.formatRange(3, 5)); // "3-5 €"
console.log(nf.formatRange(2.9, 3.1)); // "~3 €"
Đặc tả kỹ thuật
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-intl.numberformat.prototype.formatrange> |