← 返回首页
Object.prototype.toLocaleString() - JavaScript | MDN

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Object.prototype.toLocaleString()

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

toLocaleString()Object インスタンスのメソッドで、オブジェクトを表す文字列を返します。このメソッドは、ロケール固有の目的のために派生オブジェクトによってオーバーライドするためのものです。

目次

試してみましょう

const date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); console.log(date.toLocaleString("ar-EG")); // 予想される結果: "٢٠‏/١٢‏/٢٠١٢ ٤:٠٠:٠٠ ص" const number = 123456.789; console.log(number.toLocaleString("de-DE")); // 予想される結果: "123.456,789"

構文

js
toLocaleString()

引数

なし。ただし、このメソッドをオーバーライドするすべてのオブジェクトは、 Number.prototype.toLocaleString のように locales と options に対応する最大 2 つの引数を受け取ることが期待されます。これらの引数の位置は、他の目的には使用しないでください。

返値

this.toString() 呼び出しの返値です。

解説

Object.prototype 継承するすべてのオブジェクト(つまり、 null プロトタイプオブジェクトを除くすべてのオブジェクト)は、 toLocaleString() メソッドを継承します。 Object's toLocaleString は、 this.toString() を呼び出した結果を返します。

この関数は、オブジェクトに汎用的な toLocaleString メソッドを提供するために用意されています。コア言語では、これらの組み込みオブジェクトは toLocaleString をオーバーライドしてロケール特有の書式設定を行います。

基底の toLocaleString() メソッドの使用

基底の toLocaleString() メソッドは、単純に toString() を呼び出します。

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

Array における toLocaleString() のオーバーライド

Array.prototype.toLocaleString()は、各要素の toLocaleString() メソッドを呼び出して、結果をロケール特有の区切り文字で連結することで、配列の値を文字列として出力するために使用されます。例を示します。

js
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() は、特定のロケールに適した日付表示を出力するために使用されます。例を示します。

js
const testDate = new Date(); // "Date Fri May 29 2020 18:04:24 GMT+0100 (イギリス夏時間)" 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() は、特定のロケールに適した数値表示を出力するために使用されます。例を示します。

js
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

ブラウザーの互換性

ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。

関連情報