Spec-Zone.ru › JavaScript

Object.prototype.toLocaleString()

Baseline Широко доступен

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2017 года.

Метод toLocaleString() объекта Object возвращает строковое представление этого объекта. Этот метод предназначен для переопределения в производных объектах в целях локализации.

Попробуйте

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"

Синтаксис

toLocaleString()

Параметры

Нет. Однако ожидается, что все объекты, переопределяющие этот метод, будут принимать максимум два параметра, соответствующих locales и options, как, например, в Number.prototype.toLocaleString. Позиции параметров не должны использоваться для каких-либо других целей.

Возвращаемое значение

Возвращаемое значение вызова this.toString().

Описание

Все объекты, наследующие от Object.prototype (то есть все, кроме объектов с null-прототипом), наследуют метод toLocaleString(). Метод toLocaleString объекта Object возвращает результат вызова this.toString().

Эта функция предоставляется для того, чтобы объекты имели общий метод toLocaleString, даже если не все из них могут его использовать. В базовом языке эти встроенные объекты переопределяют toLocaleString для предоставления локализованного форматирования:

  • Array: Array.prototype.toLocaleString()
  • Number: Number.prototype.toLocaleString()
  • Date: Date.prototype.toLocaleString()
  • TypedArray: TypedArray.prototype.toLocaleString()
  • BigInt: BigInt.prototype.toLocaleString()

Примеры

Использование базового метода toLocaleString()

Базовый метод toLocaleString() просто вызывает toString().

const obj = {
  toString() {
    return "My Object";
  },
};
console.log(obj.toLocaleString()); // "My Object"

Переопределение Array.toLocaleString()

Array.prototype.toLocaleString() используется для вывода значений массива в виде строки путем вызова метода toLocaleString() каждого элемента и объединения результатов с использованием локализованного разделителя. Например:

const testArray = [4, 7, 10];

const euroPrices = testArray.toLocaleString("fr", {
  style: "currency",
  currency: "EUR",
});
// "4,00 €,7,00 €,10,00 €"

Переопределение Date.toLocaleString()

Date.prototype.toLocaleString() используется для вывода дат в формате, более подходящем для определенных локалей. Например:

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"

Переопределение Number.toLocaleString()

Number.prototype.toLocaleString() используется для вывода чисел в формате, более подходящем для определенных локалей, например, с правильными разделителями. Например:

const testNumber = 2901234564;
// "2901234564"

const deNumber = testNumber.toLocaleString("de");
// "2.901.234.564"

const frNumber = testNumber.toLocaleString("fr");
// "2 901 234 564"

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-object.prototype.tolocalestring

Совместимость с браузерами

Настольные ПК Мобильные Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
toLocaleString
1
12
1
4
1
18
4
10.1
1
1.0
1
1
1.0.0
1.0
0.10.0

См. также

  • Object.prototype.toString()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toLocaleString

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API