【JavaScript】toLocaleString() 数値/日付/配列をロケールに従ってフォーマットする
更新日:2024/03/19
JavaScriptのtoLocaleString()は数値や日付を各国の言語仕様にフォーマットします。
今回は、このメソッドについて少し詳しく紹介します。
- 1toLocaleString()の使用例
- 2数値.toLocaleString()
- 3日付.toLocaleString()
- 4配列.toLocaleString()
- 5TypedArray.toLocaleString()
- 6オブジェクト.toLocaleString()
- 7オプションのプロパティ
- localeMatcher
- numberingSystem
- notation
- compactDisplay
- signDisplay
- roundingPriority
- roundingMode
- roundingIncrement
- trailingZeroDisplay
- style
- currency
- currencyDisplay
- currencySign
- unit
- unitDisplay
- useGrouping
- minimumSignificantDigits
- maximumSignificantDigits
- minimumFractionDigits
- maximumFractionDigits
- minimumIntegerDigits
- calendar
- timeZone
- hourCycle
- hour12
- formatMatcher
- dateStyle
- timeStyle
- weekday
- era
- year
- month
- day
- dayPeriod
- hour
- minute
- second
- fractionalSecondDigits
- timeZoneName
toLocaleString()の使用例
toLocaleString()は数値(Number)および日付(Date)、配列(Array)、TypedArray、オブジェクト(Object)で使用できるメソッドです。
まずは、それぞれの使用例を紹介します。
■【JavaScript】ブラウザの言語設定(ロケール)と言語名を取得する方法
参考:
■Unicode共通ロケールデータリポジトリ(Unicode CLDR)
■jaロケールの変換データ|GitHub
■その他ロケールの変換データ|GitHub
数値にtoLocaleString()メソッドを適用すると、数値をロケールに従ってフォーマットしたものを文字列で返します。
日本(ja)ロケールなら、小数点をピリオドで、整数部を3桁毎にカンマで区切ります。
※BigInt型は小数を持ちませんが、toLocaleString()が適用されます。
const value = 123456789.123456;
// 現在のロケールで数値をフォーマット
console.log( value.toLocaleString() );
>> 123,456,789.123
// ロケールを指定して数値をフォーマット
console.log( value.toLocaleString("it") );
>> 123.456.789,123
console.log( value.toLocaleString("as") );
>> ১২,৩৪,৫৬,৭৮৯.১২৩
日付にtoLocaleString()メソッドを適用すると、日付をロケールに従ってフォーマットしたものを文字列で返します。
日本(ja)ロケールなら、年/月/日 時:分:秒の形式に整形されます。
const date = new Date();
// 現在のロケールで日付をフォーマット
console.log( date.toLocaleString() );
>> 2023/10/20 16:27:48
// ロケールを指定して日付をフォーマット
console.log( date.toLocaleString("it") );
>> 20/10/2023, 16:27:48
console.log( date.toLocaleString("as") );
>> ২০-১০-২০২৩, অপৰাহ্ন ৪:২৭:৪৮
配列にtoLocaleString()メソッドを適用すると、各要素をロケールに従ってフォーマットしたものをカンマで連結後に文字列で返します。
各要素のフォーマット後の文字列中にカンマが含まれることがあります。
この場合はカンマが各要素の区切りかどうかの判定が非常に難しくなります。
例えばjaロケールは数値が3桁毎にカンマで区切られます。
そのためカンマが、3桁毎の区切りなのか要素の区切りなのかを判別できません。
const array = [1234,2345,"a","b,c",new Date()];
// 現在のロケールで配列をフォーマット
console.log( array.toLocaleString() );
>> 1,234,2,345,a,b,c,2023/12/14 14:23:35
// ロケールを指定して配列をフォーマット
console.log( array.toLocaleString("it") );
>> 1.234,2.345,a,b,c,14/12/2023, 14:24:25
console.log( array.toLocaleString("as") );
>> ১,২৩৪,২,৩৪৫,a,b,c,১৪-১২-২০২৩, অপৰাহ্ন ২:২৫:০২
TypedArrayにtoLocaleString()メソッドを適用すると、各要素をロケールに従ってフォーマットしたものをカンマで連結後に文字列で返します。
配列のケースと同じですが、変換対象が数値のみとなります。
const u16Array = new Uint16Array([1001,1002,1003,1004]);
// 現在のロケールでTypedArrayをフォーマット
console.log( u16Array.toLocaleString() );
>> 1,001,1,002,1,003,1,004
// ロケールを指定してTypedArrayをフォーマット
console.log( u16Array.toLocaleString("is") );
>> 1.001,1.002,1.003,1.004
console.log( u16Array.toLocaleString("as") );
>> ১,০০১,১,০০২,১,০০৩,১,০০৪
参考:【JavaScript】 ArrayBufferとTypedArray-メモリを確保してアクセス
オブジェクトにtoLocaleString()メソッドを適用すると、オブジェクトのtoString()メソッドを呼び出した結果を返します。
const object ={a:1,b:2};
console.log( object.toLocaleString() );
>> [object Object]
数値.toLocaleString()
数値.toLocaleString()は、数値をロケールに従ってカンマや小数点を付加した文字列を生成します。
※BigInt型は小数を持ちませんが、toLocaleString()が適用されます。
このメソッドは引数を二つ受け付けます。
数値.toLocaleString( ロケール , オプション )
ロケールとオプションは省略可能です。
ロケールを省略すると現在のロケールが使用されます。
const value = 123456789.123456;
// 現在のロケールで数値をフォーマット
console.log( value.toLocaleString() );
>> 123,456,789.123
// ロケールを指定して数値をフォーマット
console.log( value.toLocaleString("it") );
>> 123.456.789,123
console.log( value.toLocaleString("as") );
>> ১২,৩৪,৫৬,৭৮৯.১২৩
itはイタリア語です。
イタリア語は桁区切りがドット(.)、小数点がカンマ(,)と、日本語と逆の配置になっています。
asはアッサム語です。
こちらはカンマとドットの使い方が日本語と同じですが、それ以前に数字の表記が異なっています。
オプションを指定することで、フォーマット方法を変更できます。
const value = 123.456;
const option = {
localeMatcher: "best fit", // ロケールのマッチングアルゴリズム。(使用できる値)
numberingSystem:"mong", // 数値体系: 123…は "latn" (値の例)
notation: "standard" , // 数値の表示方法。(使用できる値)
compactDisplay: "long" , // notation:"compact" のとき使用 (使用できる値)
signDisplay: "always", // 符号表示。(使用できる値)
roundingPriority: "auto", // 丸め精度。(使用できる値)
roundingMode: "halfExpand", // 丸めタイプ。(使用できる値)
roundingIncrement: 1 , // 丸め判定増加値。(使用できる値)
trailingZeroDisplay: "auto", // 小数部ゼロ表示。(使用できる値)
style: "unit", // 表示スタイル。(使用できる値)
// 以下3行 style:"currency"のとき有効
currency: "JPY", // style: ISO 4217 通貨コード。style:"currency"のとき必須。(値の例)
currencyDisplay: "name", // 通貨表示のタイプ。(使用できる値)
currencySign: "standard" , // 負数を会計形式で表示するかどうか。(使用できる値)
// 以下2行 style:"unit"のとき有効
unit: "kilobyte-per-hour", // style: "unit"のとき必要(使用できる値)
unitDisplay: "long", // 単位の表示方法。(使用できる値)
useGrouping: true, // 区切り記号(カンマなど)を使用するかどうか
// 桁指定①
minimumSignificantDigits: 5, // 整数・小数含めた最小有効桁数 (説明)
maximumSignificantDigits: 10, // 整数・小数含めた最大有効桁数 (説明)
// 桁指定② ①が指定されている時無効
minimumFractionDigits:4, // 小数部最小桁数 (説明)
maximumFractionDigits:6 // 小数部最大桁数 (説明)
// 桁指定③
minimumIntegerDigits:10, // 整数部最小桁数 (説明)
};
console.log( value.toLocaleString( "ja-JP",option) );
>> +᠐,᠐᠐᠐,᠐᠐᠐,᠑᠒᠓.᠔᠕᠖ キロバイト/時間
全てのオプションを指定する必要はありません。
各プロパティについては、コメント内のリンク先を参照してください。
オプションのデフォルト値は、次のコードで確認できます。
console.log( new Intl.NumberFormat("ja-JP").resolvedOptions() );
>> Object { locale: "ja-JP", numberingSystem: "latn", style: "decimal", minimumIntegerDigits: 1, minimumFractionDigits: 0, maximumFractionDigits: 3, useGrouping: "auto", notation: "standard", signDisplay: "auto", roundingMode: "halfExpand", … }
日付.toLocaleString()
日付オブジェクト.toLocaleString()は、日付オブジェクトをロケールに従ってフォーマットした文字列を生成します。
このメソッドは引数を二つ受け付けます。
日付オブジェクト.toLocaleString( ロケール , オプション )
toLocaleString()の他に、日付または時刻のみをフォーマットする関数が用意されています。
日付のみ: 日付オブジェクト.toLocaleDateString( ロケール , オプション ) 時刻のみ: 日付オブジェクト.toLocaleTimeString( ロケール , オプション )
ロケールとオプションは省略可能です。
ロケールを省略すると現在のロケールが使用されます。
const date = new Date();
// 現在のロケールで日付をフォーマット
console.log( date.toLocaleString() );
>> 2023/10/20 16:27:48
// ロケールを指定して日付をフォーマット
console.log( date.toLocaleString("it") );
>> 20/10/2023, 16:27:48
console.log( date.toLocaleString("as") );
>> ২০-১০-২০২৩, অপৰাহ্ন ৪:২৭:৪৮
itはイタリア語、asはアッサム語です。
それぞれ、日本語とは形式が異なっています。
ロケールを変更しても、出力結果は同じ時間になります。
現地時間では無い点に注意が必要です。
出力結果を現地時間に変更するときは、オプションのtimeZoneを変更します。
オプションは次のようなオブジェクトです。
const date = new Date();
const option = {
localeMatcher: "best fit", // ロケールのマッチングアルゴリズム。(使用できる値)
numberingSystem:"latn", // 数値体系: 123…は "latn" (値の例)
calendar: "japanese" , // 暦の種類。 (使用できる値)
timeZone: "Asia/Tokyo" , // タイムゾーン。 (説明)
hourCycle: "12h", // 12/24時制の指定 (使用できる値)
hour12: true , // 12時制の指定 (説明)
formatMatcher: "best fit", // フォーマットのマッチングアルゴリズム。(使用できる値)
// 表示形式 ① ※②と同時使用するとエラー
/* ②を有効にするためコメント化
dateStyle: "full", // 日付表示形式。(使用できる値)
timeStyle: "full", // 時刻表示形式。(使用できる値)
*/
// 表示形式 ②
weekday: "long", // 週の表示形式。(使用できる値)
era: "long", // 時代の表示形式。(使用できる値)
year: "2-digit", // 年の表示形式。(使用できる値)
month: "2-digit", // 月の表示形式。(使用できる値)
day: "2-digit", // 日の表示形式。(使用できる値)
dayPeriod:"long", // 日周期の表示形式。(使用できる値)
hour: "2-digit", // 時間の表示形式。(使用できる値)
minute: "2-digit", // 分の表示形式。(使用できる値)
second: "2-digit", // 秒の表示形式。(使用できる値)
fractionalSecondDigits:2, // 秒の小数桁数 (説明)
timeZoneName: "long", // タイムゾーンの表示形式 (説明)
};
console.log( date.toLocaleString( "ja-JP",option) );
>>令和5年10月26日木曜日 夜07:40:13.67 日本標準時
全てのオプションを指定する必要はありません。
各プロパティについては、コメント内のリンク先を参照してください。
オプションのデフォルト値は、次のコードで確認できます。
console.log( new Intl.DateTimeFormat("ja-JP").resolvedOptions() );
>>Object { locale: "ja-JP", calendar: "gregory", numberingSystem: "latn", timeZone: "Etc/GMT-9", year: "numeric", month: "numeric", day: "numeric" }
配列.toLocaleString()
配列オブジェクト.toLocaleString()は、各要素に対してtoLocaleString()を呼び出した結果を、カレントロケールの区切り文字(jaは",")で連結した結果を返します。
nullとundefinedはtoLocaleString()を呼び出せないため、空文字になります。
このメソッドは引数を二つ受け付けます。
配列オブジェクト.toLocaleString( ロケール , オプション )
ロケールとオプションは省略可能です。
引数が存在するときは、各要素のtoLocaleString()に引き渡されます。
const array = [1234,2345,"a","b,c",true,null,undefined];
// 現在のロケールで配列をフォーマット
console.log( array.toLocaleString() );
>> 1,234,2,345,a,b,c,true,,
// ロケールを指定して配列をフォーマット
console.log( array.toLocaleString("it") );
>> ১,২৩৪,২,৩৪৫,a,b,c,true,,
console.log( array.toLocaleString("as") );
>> ১,২,a,b,true,,
数値の桁区切りと文字列内のカンマは、そのまま出力されます。
そのため、csvデータ等に使用できません。
useGroupingオプションを使用することで、数値桁区切りを抑制できます。
console.log( array.toLocaleString("ja-JP",{useGrouping:false}) );
>>1234,2345,a,b,c
カンマを含む文字列はダブルコーテーションで囲む必要がありますが、toLocaleString()では対応できません。
またロケールによっては、日付にカンマが含まれます。
そのため、次のような自作関数で対応する必要があります。
文字列等をダブルコーテーションで囲む
const toLocaleArrayString =( array,locale=null,option={} )=>{
const loc = typeof locale === "string" ? locale : Intl.NumberFormat().resolvedOptions().locale;
const opt = option instanceof Object ? option : {};
opt.useGrouping = false;
return array.map( e=>{
if( e instanceof Object ) return `"${ e.toLocaleString(loc,opt)}"`;
switch( typeof e ){
case "object":return "null";
case "undefined":return "undefined";
case "string":case "symbol":
return `"${ e.toLocaleString(loc,opt) }"`;
default:
return e.toLocaleString(loc,opt);
}
}).join(",");
};
const array = [123456,new Date(),{a:1,b:2},"a,b,c",null,undefined,Symbol("a,b"),()=>{}];
>> 123456,"2023/10/27 16:59:50","[object Object]","a,b,c",null,undefined,"Symbol(a,b)","()=>{}"
toLocaleString()はnullとundefinedを空文字に変換しますが、上の関数は文字に変換しています。
TypedArray.toLocaleString()
TypedArray.toLocaleString()は配列.toLocaleString()と同様に、各要素に対してtoLocaleString()を呼び出します。
このメソッドは引数を二つ受け付けます。
TypedArray.toLocaleString( ロケール , オプション )
ロケールとオプションは省略可能です。
引数が存在するときは、各要素のtoLocaleString()に引き渡されます。
const u16Array = new Uint16Array([1001,1002,1003,1004]);
// 現在のロケールでTypedArrayをフォーマット
console.log( u16Array.toLocaleString() );
>> 1,001,1,002,1,003,1,004
// ロケールを指定してTypedArrayをフォーマット
console.log( u16Array.toLocaleString("is") );
>> 1.001,1.002,1.003,1.004
console.log( u16Array.toLocaleString("as") );
>> ১,০০১,১,০০২,১,০০৩,১,০০৪
useGroupingオプションを使用することで、数値桁区切りを抑制できます。
console.log( u16Array.toLocaleString("ja-Jp",{useGrouping:false}) );
>> 1001,1002,1003,1004
オブジェクト.toLocaleString()
オブジェクト.toLocaleString()は、オブジェクトのtoString()メソッドを呼び出した結果を返します。
ただし日付と配列オブジェクトは、各オブジェクトに対応した処理が呼び出されます。
このメソッドは引数がありません。
オブジェクト.toLocaleString( )
const object ={a:1,b:2};
console.log( object.toLocaleString() , object.toString());
>> [object Object],[object Object]
また、数値以外のラッパーオブジェクトも、toString()メソッドが呼び出されます。
const text = "こんにちは";
console.log( text.toLocaleString() , text.toString() );
>> こんにちは,こんにちは
const bool = false;
console.log( bool.toLocaleString() , text.toString() );
>> false,false
const func = function(a){return a;};
console.log( func.toLocaleString() , text.toString() );
>> function(a){return a;},function(a){return a;}
const symbol = Symbol("シンボルです");
console.log( symbol.toLocaleString() , text.toString() );
>> Symbol(シンボルです),Symbol(シンボルです)
オプションのプロパティ
toLocaleString()のオプションで使用できるプロパティと値の一覧です。
localeMatcher
値 | 内容 |
---|---|
best fit(規定値) | BCP47の言語優先順位リストに従って、ロケールのマッチングを行う |
lookup | BCP47のlookに従って、ロケールのマッチングを行う |
numberingSystem
数字サンプルは、お使いのブラウザ上で生成しています。
環境によって表示内容が異なる可能性があります。
値 | 内容 | 数字サンプル |
---|---|---|
adlm | アドラム数字(Adlam digits) | |
ahom | アホム数字(Ahom digits) | |
arab | アラビア・インド数字(Arabic-Indic digits) | |
arabext | 拡張アラビア・インド数字(Extended Arabic-Indic digits) | |
armn | アルメニア語の大文字数字(Armenian upper case numerals) | |
armnlow | アルメニア語の小文字数字(Armenian lower case numerals) | |
bali | バリ数字(Balinese digits) | |
beng | ベンガル語の数字(Bengali digits) | |
bhks | バイスキ数字(Bhaiksuki digits) | |
brah | ブラーフミー数字(Brahmi digits) | |
cakm | チャクマ数字(Chakma digits) | |
cham | チャム数字(Cham digits) | |
cyrl | キリル数字(Cyrillic numerals) | |
deva | デヴァナーガリー数字(Devanagari digits) | |
diak | ダイブアクル数字(Dives Akuru digits) | |
ethi | エチオピア数字(Ethiopic numerals) | |
finance | 財務数値(Financial numerals) | |
fullwide | 全角数字(Full width digits) | |
geor | グルジア数字(Georgian numerals) | |
gong | グンジャラ・ゴンディの数字(Gunjala Gondi digits) | |
gonm | マサラム・ゴンディの数字(Masaram Gondi digits) | |
grek | ギリシャ大文字の数字(Greek upper case numerals) | |
greklow | ギリシャ小文字の数字(Greek lower case numerals) | |
gujr | グジャラート語の数字(Gujarati digits) | |
guru | グルムキ数字(Gurmukhi digits) | |
hanidays | 旧暦/その他の伝統的な暦の漢文字の月の番号付け (Han-character day-of-month numbering for lunar/other traditional calendars) | |
hanidec | 漢数字の表意文字を数字として使用する位置 10 進法 (Positional decimal system using Chinese number ideographs as digits) | |
hans | 簡体字中国語数字(Simplified Chinese numerals) | |
hansfin | 簡体字中国語の金融数字(Simplified Chinese financial numerals) | |
hant | 繁体字中国語数字(Traditional Chinese numerals) | |
hantfin | 伝統的な中国の金融数字(Traditional Chinese financial numerals) | |
hebr | ヘブライ数字(Hebrew numerals) | |
hmng | パハウ・モン族の数字(Pahawh Hmong digits) | |
hmnp | ニャケン・プアチュエ・モン族の数字(Nyiakeng Puachue Hmong digits) | |
java | ジャワ数字(Javanese digits) | |
jpan | 日本語の数字(Japanese numerals) | |
jpanfin | 日本の金融数字(Japanese financial numerals) | |
jpanyear | 和暦の元年元年番号付け(Japanese first-year Gannen numbering for Japanese calendar) | |
kali | カヤー・リーの数字(Kayah Li digits) | |
kawi | カウィ数字(Kawi digits) | |
khmr | クメール数字(Khmer digits) | |
knda | カンナダ語の数字(Kannada digits) | |
lana | タイ・タム・ホラ(世俗的)数字(Tai Tham Hora (secular) digits) | |
lanatham | Tai Tham Tham (教会) 数字(Tai Tham Tham (ecclesiastical) digits) | |
laoo | ラオス語の数字(Lao digits) | |
latn | ラテン数字(Latin digits) | |
lepc | レプチャ数字(Lepcha digits) | |
limb | リンブー数字(Limbu digits) | |
mathbold | 数学的な太字の数字(Mathematical bold digits) | |
mathdbl | 数学的な二重打ち数字(Mathematical double-struck digits) | |
mathmono | 数学的な等幅数字(Mathematical monospace digits) | |
mathsanb | 数学的なサンセリフ太字数字(Mathematical sans-serif bold digits) | |
mathsans | 数学的なサンセリフ数字(Mathematical sans-serif digits) | |
mlym | マラヤーラム語の数字(Malayalam digits) | |
modi | モディ桁(Modi digits) | |
mong | モンゴル数字(Mongolian digits) | |
mroo | ミスター数字(Mro digits) | |
mtei | ミーテイ・マエクの数字(Meetei Mayek digits) | |
mymr | ミャンマーの数字(Myanmar digits) | |
mymrshan | ミャンマーのシャン数字(Myanmar Shan digits) | |
mymrtlng | ミャンマーのタイレイン数字(Myanmar Tai Laing digits) | |
nagm | ナグ・ムンダリ数字(Nag Mundari digits) | |
native | ネイティブの数字(Native digits) | |
newa | 新しい数字(Newa digits) | |
nkoo | N'Ko の数字(N'Ko digits) | |
olck | オルチキ桁(Ol Chiki digits) | |
orya | オリヤ数字(Oriya digits) | |
osma | オスマニヤ数字(Osmanya digits) | |
rohg | ハニフィ・ロヒンギャの数字(Hanifi Rohingya digits) | |
roman | ローマ字の大文字数字(Roman upper case numerals) | |
romanlow | ローマ字の小文字(Roman lowercase numerals) | |
saur | サウラーシュトラ数字(Saurashtra digits) | |
segment | レガシーコンピューティングのセグメント化された数字 (Legacy computing segmented digits) | |
shrd | シャラダ数字(Sharada digits) | |
sind | クダワディ数字(Khudawadi digits) | |
sinh | シンハラ語のリス数字(Sinhala Lith digits) | |
sora | ソラ_ソンペン数字(Sora_Sompeng digits) | |
sund | スンダ語の数字(Sundanese digits) | |
takr | タクリ数字(Takri digits) | |
talu | 新しいTai Lueの数字(New Tai Lue digits) | |
taml | タミル数字(Tamil numerals) | |
tamldec | 現代タミル語 10 進数(Modern Tamil decimal digits) | |
tnsa | タンサ数字(Tangsa digits) | |
telu | テルグ語の数字(Telugu digits) | |
thai | タイ語の数字(Thai digits) | |
tirh | ティルフタ数字(Tirhuta digits) | |
tibt | チベット数字(Tibetan digits) | |
traditio | 伝統的な数字(Traditional numerals) | |
vaii | ヴァイ数字(Vai digits) | |
wara | ワランシティの数字(Warang Citi digits) | |
wcho | ワンチョ数字(Wancho digits) |
notation
値 | 内容 | 表示サンプル |
---|---|---|
standard(規定値) | 通常の表示 | 123,456 |
scientific | 指数表記 | 1.23456E5 |
engineering | 小数部が3の倍数桁になるように指数表記 | 123.456E3 |
compact | 最も大きい現地単位で表示 | 12万 |
compactDisplay
表示サンプルは "en-US"ロケールでの表示結果です。
値 | 内容 | 表示サンプル |
---|---|---|
short(規定値) | 短い単位表記 | 12M |
long | 長い単位表記 | 12 million |
signDisplay
値 | 内容 | 表示サンプル |
---|---|---|
auto(規定値) | 負数の時符号表示 | -100 |
never | 符号を表示しない | 100 |
always | 符号を表示する | -100 |
exceptZero | ゼロ値以外は符号を表示する | -100 |
roundingPriority
値 | 内容 | 表示サンプル |
---|---|---|
auto(規定値) | 自動選択 | 123.46 |
morePrecision | 高い精度で丸める | 123.457 |
lessPrecision | 低い精度で丸める | 123.46 |
roundingMode
値 | 内容 | 計算結果 | |||||
---|---|---|---|---|---|---|---|
-1.6 | -1.5 | -1.4 | 1.4 | 1.5 | 1.6 | ||
ceil | 正の方向に切り上げ | -1 | -1 | -1 | 2 | 2 | 2 |
floor | 負の方向に切り上げ | -2 | -2 | -2 | 1 | 1 | 1 |
expand | 切り上げ | -2 | -2 | -2 | 2 | 2 | 2 |
trunc | 切り捨て | -1 | -1 | -1 | 1 | 1 | 1 |
halfCeil | 正の方向に四捨五入 | -2 | -1 | -1 | 1 | 2 | 2 |
halfFloor | 負の方向に四捨五入 | -2 | -2 | -1 | 1 | 1 | 2 |
halfExpand(規定値) | 四捨五入 | -2 | -2 | -1 | 1 | 2 | 2 |
halfTrunc | 0方向に四捨五入 | -2 | -1 | -1 | 1 | 1 | 2 |
halfEven | 四捨五入。 5のとき繰り上げ結果が偶数なら繰り上げ | -2 | -2 | -1 | 1 | 2 | 2 |
2.5→2 , 3.5→4 , 4.5→4 , 5.5→6 |
値 | 内容 | 表示サンプル |
---|---|---|
auto(規定値) | 通常の表示 | 123.0000 |
stripIfInteger | 小数部が0のみのとき、小数部を表示しない | 123 |
style
値 | 内容 | 表示サンプル |
---|---|---|
decimal(規定値) | 通常の表示 | 123,456 |
currency | 通貨表記 | ¥100 |
percent | パーセント表記 | 123% |
unit | 単位指定 | --- |
currency
下表の通貨名はcurrency:通貨コード、currencyDisplay:"name" として、Node.jsでtoLocaleString()を実行したときに表示された文字列です。
通貨コード | 通貨名 (※ロケール: "ja-JP" | "en-US") |
---|---|
ADP | アンドラ ペセタ|Andorran pesetas |
AED | UAE ディルハム|UAE dirhams |
AFA | アフガニスタン アフガニー(1927–2002)|Afghan afghanis(1927–2002) |
AFN | アフガニスタン アフガニー|Afghan Afghanis |
ALK | アルバニア レク(1946–1965)|Albanian lekë(1946–1965) |
ALL | アルバニア レク|Albanian lekë |
AMD | アルメニア ドラム|Armenian drams |
ANG | オランダ領アンティル ギルダー|Netherlands Antillean guilders |
AOA | アンゴラ クワンザ|Angolan kwanzas |
AOK | アンゴラ クワンザ(1977–1991)|Angolan kwanzas(1977–1991) |
AON | アンゴラ 新クワンザ(1990–2000)|Angolan new kwanzas(1990–2000) |
AOR | アンゴラ 旧クワンザ(1995–1999)|Angolan readjusted kwanzas(1995–1999) |
ARA | アルゼンチン アゥストラール|Argentine australs |
ARL | アルゼンチン・ペソ・レイ(1970–1983)|Argentine pesos ley(1970–1983) |
ARM | アルゼンチン・ペソ(1881–1970)|Argentine pesos(1881–1970) |
ARP | アルゼンチン ペソ(1983–1985)|Argentine pesos(1983–1985) |
ARS | アルゼンチン ペソ|Argentine pesos |
ATS | オーストリア シリング|Austrian schillings |
AUD | オーストラリア ドル|Australian dollars |
AWG | アルバ フロリン|Aruban florin |
AZM | アゼルバイジャン マナト(1993–2006)|Azerbaijani manats(1993–2006) |
AZN | アゼルバイジャン マナト|Azerbaijani manats |
BAD | ボスニア・ヘルツェゴビナ ディナール(1992–1994)|Bosnia-Herzegovina dinars(1992–1994) |
BAM | ボスニア・ヘルツェゴビナ 兌換マルク(BAM)|Bosnia-Herzegovina convertible marks |
BAN | ボスニア・ヘルツェゴビナ 新ディナール(1994–1997)|Bosnia-Herzegovina new dinars(1994–1997) |
BBD | バルバドス ドル|Barbadian dollars |
BDT | バングラデシュ タカ|Bangladeshi takas |
BEC | ベルギー フラン(BEC)|Belgian francs(convertible) |
BEF | ベルギー フラン|Belgian francs |
BEL | ベルギー フラン(BEL)|Belgian francs(financial) |
BGL | ブルガリア レフ|Bulgarian hard leva |
BGM | ブルガリア社会主義 レフ|Bulgarian socialist leva |
BGN | ブルガリア 新レフ|Bulgarian leva |
BGO | ブルガリア レフ(1879–1952)|Bulgarian leva(1879–1952) |
BHD | バーレーン ディナール|Bahraini dinars |
BIF | ブルンジ フラン|Burundian francs |
BMD | バミューダ ドル|Bermudan dollars |
BND | ブルネイ ドル|Brunei dollars |
BOB | ボリビア ボリビアーノ|Bolivian bolivianos |
BOL | ボリビア ボリビアーノ(1863–1963)|Bolivian bolivianos(1863–1963) |
BOP | ボリビア ペソ|Bolivian pesos |
BOV | ボリビア(Mvdol)|Bolivian mvdols |
BRB | ブラジル 新クルゼイロ(1967–1986)|Brazilian new cruzeiros(1967–1986) |
BRC | ブラジル クルザード(1986–1989)|Brazilian cruzados(1986–1989) |
BRE | ブラジル クルゼイロ(1990–1993)|Brazilian cruzeiros(1990–1993) |
BRL | ブラジル レアル|Brazilian reals |
BRN | ブラジル 新クルザード(1989–1990)|Brazilian new cruzados(1989–1990) |
BRR | ブラジル クルゼイロ(1993–1994)|Brazilian cruzeiros(1993–1994) |
BRZ | ブラジル クルゼイロ(1942–1967)|Brazilian cruzeiros(1942–1967) |
BSD | バハマ ドル|Bahamian dollars |
BTN | ブータン ニュルタム|Bhutanese ngultrums |
BUK | ビルマ チャット|Burmese kyats |
BWP | ボツワナ プラ|Botswanan pulas |
BYB | ベラルーシ 新ルーブル(1994–1999)|Belarusian rubles(1994–1999) |
BYN | ベラルーシ ルーブル|Belarusian rubles |
BYR | ベラルーシ ルーブル(2000–2016)|Belarusian rubles(2000–2016) |
BZD | ベリーズ ドル|Belize dollars |
CAD | カナダ ドル|Canadian dollars |
CDF | コンゴ フラン|Congolese francs |
CHE | ユーロ(WIR)|WIR euros |
CHF | スイス フラン|Swiss francs |
CHW | フラン(WIR)|WIR francs |
CLE | チリ エスクード|Chilean escudos |
CLF | チリ ウニダ・デ・フォメント(UF)|Chilean units of account(UF) |
CLP | チリ ペソ|Chilean pesos |
CNH | 中国人民元(オフショア)|Chinese yuan(offshore) |
CNX | 中国人民銀行ドル|Chinese People’s Bank dollars |
CNY | 中国人民元|Chinese yuan |
COP | コロンビア ペソ|Colombian pesos |
COU | コロンビア レアル(UVR)|Colombian real value units |
CRC | コスタリカ コロン|Costa Rican colóns |
CSD | セルビア ディナール(2002–2006)|Serbian dinars(2002–2006) |
CSK | チェコスロバキア コルナ|Czechoslovak hard korunas |
CUC | キューバ 兌換ペソ|Cuban convertible pesos |
CUP | キューバ ペソ|Cuban pesos |
CVE | カーボベルデ エスクード|Cape Verdean escudos |
CYP | キプロス ポンド|Cypriot pounds |
CZK | チェコ コルナ|Czech korunas |
DDM | 東ドイツ マルク|East German marks |
DEM | ドイツ マルク|German marks |
DJF | ジブチ フラン|Djiboutian francs |
DKK | デンマーク クローネ|Danish kroner |
DOP | ドミニカ ペソ|Dominican pesos |
DZD | アルジェリア ディナール|Algerian dinars |
ECS | エクアドル スクレ|Ecuadorian sucres |
ECV | エクアドル(UVC)|Ecuadorian units of constant value |
EEK | エストニア クルーン|Estonian kroons |
EGP | エジプト ポンド|Egyptian pounds |
ERN | エリトリア ナクファ|Eritrean nakfas |
ESA | スペインペセタ(勘定A)|Spanish pesetas(A account) |
ESB | スペイン 兌換ペセタ|Spanish pesetas(convertible account) |
ESP | スペイン ペセタ|Spanish pesetas |
ETB | エチオピア ブル|Ethiopian birrs |
EUR | ユーロ|euros |
FIM | フィンランド マルカ|Finnish markkas |
FJD | フィジー ドル|Fijian dollars |
FKP | フォークランド(マルビナス)諸島 ポンド|Falkland Islands pounds |
FRF | フランス フラン|French francs |
GBP | 英国ポンド|British pounds |
GEK | ジョージア クーポン ラリ|Georgian kupon larits |
GEL | ジョージア ラリ|Georgian laris |
GHC | ガーナ セディ(1979–2007)|Ghanaian cedis(1979–2007) |
GHS | ガーナ セディ|Ghanaian cedis |
GIP | ジブラルタル ポンド|Gibraltar pounds |
GMD | ガンビア ダラシ|Gambian dalasis |
GNF | ギニア フラン|Guinean francs |
GNS | ギニア シリー|Guinean sylis |
GQE | 赤道ギニア エクウェレ|Equatorial Guinean ekwele |
GRD | ギリシャ ドラクマ|Greek drachmas |
GTQ | グアテマラ ケツァル|Guatemalan quetzals |
GWE | ポルトガル領ギニア エスクード|Portuguese Guinea escudos |
GWP | ギニアビサウ ペソ|Guinea-Bissau pesos |
GYD | ガイアナ ドル|Guyanaese dollars |
HKD | 香港ドル|Hong Kong dollars |
HNL | ホンジュラス レンピラ|Honduran lempiras |
HRD | クロアチア ディナール|Croatian dinars |
HRK | クロアチア クーナ|Croatian kunas |
HTG | ハイチ グールド|Haitian gourdes |
HUF | ハンガリー フォリント|Hungarian forints |
IDR | インドネシア ルピア|Indonesian rupiahs |
IEP | アイリッシュ ポンド|Irish pounds |
ILP | イスラエル ポンド|Israeli pounds |
ILR | イスラエル シェケル(1980–1985)|Israeli shekels(1980–1985) |
ILS | イスラエル新シェケル|Israeli new shekels |
INR | インド ルピー|Indian rupees |
IQD | イラク ディナール|Iraqi dinars |
IRR | イラン リアル|Iranian rials |
ISJ | アイスランド クローナ(1918–1981)|Icelandic krónur(1918–1981) |
ISK | アイスランド クローナ|Icelandic krónur |
ITL | イタリア リラ|Italian liras |
JMD | ジャマイカ ドル|Jamaican dollars |
JOD | ヨルダン ディナール|Jordanian dinars |
JPY | 円|Japanese yen |
KES | ケニア シリング|Kenyan shillings |
KGS | キルギス ソム|Kyrgystani soms |
KHR | カンボジア リエル|Cambodian riels |
KMF | コモロ フラン|Comorian francs |
KPW | 北朝鮮ウォン|North Korean won |
KRH | 韓国 ファン(1953–1962)|South Korean hwan(1953–1962) |
KRO | 韓国 ウォン(1945–1953)|South Korean won(1945–1953) |
KRW | 韓国ウォン|South Korean won |
KWD | クウェート ディナール|Kuwaiti dinars |
KYD | ケイマン諸島 ドル|Cayman Islands dollars |
KZT | カザフスタン テンゲ|Kazakhstani tenges |
LAK | ラオス キープ|Laotian kips |
LBP | レバノン ポンド|Lebanese pounds |
LKR | スリランカ ルピー|Sri Lankan rupees |
LRD | リベリア ドル|Liberian dollars |
LSL | レソト ロティ|Lesotho lotis |
LTL | リトアニア リタス|Lithuanian litai |
LTT | リトアニア タロナ|Lithuanian talonases |
LUC | ルクセンブルク 兌換フラン|Luxembourgian convertible francs |
LUF | ルクセンブルグ フラン|Luxembourgian francs |
LUL | ルクセンブルク 金融フラン|Luxembourg financial francs |
LVL | ラトビア ラッツ|Latvian lati |
LVR | ラトビア ルーブル|Latvian rubles |
LYD | リビア ディナール|Libyan dinars |
MAD | モロッコ ディルハム|Moroccan dirhams |
MAF | モロッコ フラン|Moroccan francs |
MCF | モネガスク フラン|Monegasque francs |
MDC | モルドバ クーポン|Moldovan cupon |
MDL | モルドバ レイ|Moldovan lei |
MGA | マダガスカル アリアリ|Malagasy ariaries |
MGF | マラガシ フラン|Malagasy francs |
MKD | マケドニア デナル|Macedonian denari |
MKN | マケドニア ディナール(1992–1993)|Macedonian denari(1992–1993) |
MLF | マリ フラン|Malian francs |
MMK | ミャンマー チャット|Myanmar kyats |
MNT | モンゴル トグログ|Mongolian tugriks |
MOP | マカオ パタカ|Macanese patacas |
MRO | モーリタニア ウギア(1973–2017)|Mauritanian ouguiyas(1973–2017) |
MRU | モーリタニア ウギア|Mauritanian ouguiyas |
MTL | マルタ リラ|Maltese lira |
MTP | マルタ ポンド|Maltese pounds |
MUR | モーリシャス ルピー|Mauritian rupees |
MVP | モルディブ諸島 ルピー|Maldivian rupees(1947–1981) |
MVR | モルディブ ルフィア|Maldivian rufiyaas |
MWK | マラウィ クワチャ|Malawian kwachas |
MXN | メキシコ ペソ|Mexican pesos |
MXP | メキシコ ペソ(1861–1992)|Mexican silver pesos(1861–1992) |
MXV | メキシコ(UDI)|Mexican investment units |
MYR | マレーシア リンギット|Malaysian ringgits |
MZE | モザンピーク エスクード|Mozambican escudos |
MZM | モザンビーク メティカル(1980–2006)|Mozambican meticals(1980–2006) |
MZN | モザンビーク メティカル|Mozambican meticals |
NAD | ナミビア ドル|Namibian dollars |
NGN | ナイジェリア ナイラ|Nigerian nairas |
NIC | ニカラグア コルドバ(1988–1991)|Nicaraguan córdobas(1988–1991) |
NIO | ニカラグア コルドバ オロ|Nicaraguan córdobas |
NLG | オランダ ギルダー|Dutch guilders |
NOK | ノルウェー クローネ|Norwegian kroner |
NPR | ネパール ルピー|Nepalese rupees |
NZD | ニュージーランド ドル|New Zealand dollars |
OMR | オマーン リアル|Omani rials |
PAB | パナマ バルボア|Panamanian balboas |
PEI | ペルー インティ|Peruvian intis |
PEN | ペルー ソル|Peruvian soles |
PES | ペルー ソル(1863–1965)|Peruvian soles(1863–1965) |
PGK | パプアニューギニア キナ|Papua New Guinean kina |
PHP | フィリピン ペソ|Philippine pesos |
PKR | パキスタン ルピー|Pakistani rupees |
PLN | ポーランド ズウォティ|Polish zlotys |
PLZ | ポーランド ズウォティ(1950–1995)|Polish zlotys(PLZ) |
PTE | ポルトガル エスクード|Portuguese escudos |
PYG | パラグアイ グアラニ|Paraguayan guaranis |
QAR | カタール リアル|Qatari riyals |
RHD | ローデシア ドル|Rhodesian dollars |
ROL | ルーマニア レイ(1952–2006)|Romanian Lei(1952–2006) |
RON | ルーマニア レイ|Romanian lei |
RSD | ディナール(セルビア)|Serbian dinars |
RUB | ロシア ルーブル|Russian rubles |
RUR | ロシア ルーブル(1991–1998)|Russian rubles(1991–1998) |
RWF | ルワンダ フラン|Rwandan francs |
SAR | サウジ リヤル|Saudi riyals |
SBD | ソロモン諸島 ドル|Solomon Islands dollars |
SCR | セーシェル ルピー|Seychellois rupees |
SDD | スーダン ディナール(1992–2007)|Sudanese dinars(1992–2007) |
SDG | スーダン ポンド|Sudanese pounds |
SDP | スーダン ポンド(1957–1998)|Sudanese pounds(1957–1998) |
SEK | スウェーデン クローナ|Swedish kronor |
SGD | シンガポール ドル|Singapore dollars |
SHP | セントヘレナ ポンド|St. Helena pounds |
SIT | スロベニア トラール|Slovenian tolars |
SKK | スロバキア コルナ|Slovak korunas |
SLE | SLE|Sierra Leonean leones |
SLL | シエラレオネ レオン|Sierra Leonean leones(1964—2022) |
SOS | ソマリア シリング|Somali shillings |
SRD | スリナム ドル|Surinamese dollars |
SRG | スリナム ギルダー|Surinamese guilders |
SSP | 南スーダン ポンド|South Sudanese pounds |
STD | サントメ・プリンシペ ドブラ(1977–2017)|São Tomé & Príncipe dobras(1977–2017) |
STN | サントメ・プリンシペ ドブラ|São Tomé & Príncipe dobras |
SUR | ソ連 ルーブル|Soviet roubles |
SVC | エルサルバドル コロン|Salvadoran colones |
SYP | シリア ポンド|Syrian pounds |
SZL | スワジランド リランゲニ|Swazi emalangeni |
THB | タイ バーツ|Thai baht |
TJR | タジキスタン ルーブル|Tajikistani rubles |
TJS | タジキスタン ソモニ|Tajikistani somonis |
TMM | トルクメニスタン マナト(1993–2009)|Turkmenistani manat(1993–2009) |
TMT | トルクメニスタン マナト|Turkmenistani manat |
TND | チュニジア ディナール|Tunisian dinars |
TOP | トンガ パ・アンガ|Tongan paʻanga |
TPE | ティモール エスクード|Timorese escudos |
TRL | トルコ リラ(1922–2005)|Turkish Lira(1922–2005) |
TRY | トルコリラ|Turkish Lira |
TTD | トリニダード・トバゴ ドル|Trinidad & Tobago dollars |
TWD | 新台湾ドル|New Taiwan dollars |
TZS | タンザニア シリング|Tanzanian shillings |
UAH | ウクライナ グリブナ|Ukrainian hryvnias |
UAK | ウクライナ カルボバネツ|Ukrainian karbovantsiv |
UGS | ウガンダ シリング(1966–1987)|Ugandan shillings(1966–1987) |
UGX | ウガンダ シリング|Ugandan shillings |
USD | 米ドル|US dollars |
USN | 米ドル(翌日)|US dollars(next day) |
USS | 米ドル(当日)|US dollars(same day) |
UYI | ウルグアイ ペソエン|Uruguayan pesos(indexed units) |
UYP | ウルグアイ ペソ(1975–1993)|Uruguayan pesos(1975–1993) |
UYU | ウルグアイ ペソ|Uruguayan pesos |
UYW | UYW|Uruguayan nominal wage index units |
UZS | ウズベキスタン スム|Uzbekistani som |
VEB | ベネズエラ ボリバル(1871–2008)|Venezuelan bolívars(1871–2008) |
VED | VED|Bolívar Soberanos |
VEF | ベネズエラ ボリバル(2008–2018)|Venezuelan bolívars(2008–2018) |
VES | ベネズエラ ボリバル|Venezuelan bolívars |
VND | ベトナム ドン|Vietnamese dong |
VNN | ベトナム ドン(1978–1985)|Vietnamese dong(1978–1985) |
VUV | バヌアツ バツ|Vanuatu vatus |
WST | サモア タラ|Samoan tala |
XAF | 中央アフリカ CFA フラン|Central African CFA francs |
XAG | 銀|troy ounces of silver |
XAU | 金|troy ounces of gold |
XBA | ヨーロッパ混合単位(EURCO)|European composite units |
XBB | ヨーロッパ通貨単位(EMU–6)|European monetary units |
XBC | ヨーロッパ勘定単位(EUA–9)|European units of account(XBC) |
XBD | ヨーロッパ勘定単位(EUA–17)|European units of account(XBD) |
XCD | 東カリブ ドル|East Caribbean dollars |
XDR | 特別引き出し権|special drawing rights |
XEU | ヨーロッパ通貨単位|European currency units |
XFO | フランス金フラン|French gold francs |
XFU | フランス フラン(UIC)|French UIC-francs |
XOF | 西アフリカ CFA フラン|West African CFA francs |
XPD | パラジウム|troy ounces of palladium |
XPF | CFP フラン|CFP francs |
XPT | プラチナ|troy ounces of platinum |
XRE | RINET基金|RINET Funds units |
XSU | スクレ|Sucres |
XTS | テスト用通貨コード|Testing Currency units |
XUA | UA(アフリカ開発銀行)|ADB units of account |
XXX | 不明または無効な通貨|(unknown currency) |
YDD | イエメン ディナール|Yemeni dinars |
YER | イエメン リアル|Yemeni rials |
YUD | ユーゴスラビア ハード・ディナール(1966–1990)|Yugoslavian hard dinars(1966–1990) |
YUM | ユーゴスラビア ノビ・ディナール(1994–2002)|Yugoslavian new dinars(1994–2002) |
YUN | ユーゴスラビア 兌換ディナール(1990–1992)|Yugoslavian convertible dinars(1990–1992) |
YUR | ユーゴスラビア 改革ディナール(1992–1993)|Yugoslavian reformed dinars(1992–1993) |
ZAL | 南アフリカ ランド(ZAL)|South African rands(financial) |
ZAR | 南アフリカ ランド|South African rand |
ZMK | ザンビア クワチャ(1968–2012)|Zambian kwachas(1968–2012) |
ZMW | ザンビア クワチャ|Zambian kwachas |
ZRN | ザイール 新ザイール(1993–1998)|Zairean new zaires(1993–1998) |
ZRZ | ザイール ザイール(1971–1993)|Zairean zaires(1971–1993) |
ZWD | ジンバブエ ドル(1980–2008)|Zimbabwean dollars(1980–2008) |
ZWL | ジンバブエ ドル(2009)|Zimbabwean dollars(2009) |
ZWR | シンバブエ ドル(2008)|Zimbabwean dollars(2008) |
currencyDisplay
値 | 内容 | 表示サンプル |
---|---|---|
symbol(規定値) | 現地での記号 | ¥100 |
narrowSymbol | 現地での短い記号 | ¥100 |
code | ISO 通貨コード | JPY 100 |
name | 現地通貨名 | 100円 |
currencySign
値 | 内容 | 表示サンプル |
---|---|---|
standard(規定値) | 負数を会計形式で表示しない | ¥100 |
accounting | 負数を会計形式で表示する | (¥100) |
unit
値は"-per-"で連結できます。
値 | 内容 | 表示サンプル |
---|---|---|
acre | エーカー | 100 ac |
bit | ビット | 100 bit |
byte | バイト | 100 byte |
celsius | 摂氏 | 100°C |
centimeter | センチメートル | 100 cm |
day | 日 | 100 日 |
degree | 度 | 100 度 |
fahrenheit | 華氏 | 100°F |
fluid-ounce | 液量オンス | 100 fl oz |
foot | フィート | 100 ft |
gallon | ガロン | 100 gal |
gigabit | ギガビット | 100 Gb |
gigabyte | ギガバイト | 100 GB |
gram | グラム | 100 g |
hectare | ヘクタール | 100 ha |
hour | 時間 | 100 時間 |
inch | インチ | 100 in |
kilobit | キロビット | 100 kb |
kilobyte | キロバイト | 100 KB |
kilogram | キログラム | 100 kg |
kilometer | キロメートル | 100 km |
liter | リットル | 100 L |
megabit | メガビット | 100 Mb |
megabyte | メガバイト | 100 MB |
meter | メートル | 100 m |
microsecond | マイクロ秒 | 100 μs |
mile | マイル | 100 mi |
mile-scandinavian | 100 スカンジナビアマイル | 100 smi |
milliliter | ミリリットル | 100 ml |
millimeter | ミリメートル | 100 mm |
millisecond | ミリ秒 | 100 ms |
minute | 分 | 100 分 |
month | か月 | 100 か月 |
nanosecond | ナノ秒 | 100 ns |
ounce | オンス | 100 oz |
percent | パーセント | 100% |
petabyte | ペタバイト | 100 PB |
pound | ポンド | 100 lb |
second | 秒 | 100 秒 |
stone | ストーン | 100 st |
terabit | テラビット | 100 Tb |
terabyte | テラバイト | 100 TB |
week | 週間 | 100 週間 |
yard | ヤード | 100 yd |
year | 年 | 100 年 |
unitDisplay
値 | 内容 | 表示サンプル |
---|---|---|
long | 長い表記 | 100 キロバイト |
short(規定値) | 短い表記 | 100 KB |
narrow | 最も短い表記 | 100KB |
useGrouping
値 | 内容 | 表示サンプル |
---|---|---|
true(規定値) | カンマなどの区切り記号を表示する | 123,456,789 |
false/td> | カンマなどの区切り記号を表示しない | 123456789 |
minimumSignificantDigits
最小有効桁数を指定する。
1から21で指定。初期値は1。
桁数が指定値より小さい場合、小数側で調整される。
const option ={
minimumSignificantDigits: 5, // 最小有効桁数
};
console.log( (123).toLocaleString( "ja-JP",option) );
>> 123.00
console.log( (1.23).toLocaleString( "ja-JP",option) );
>> 1.2300
maximumSignificantDigits
最大有効桁数を指定する。
1から21で指定。初期値は21。
minimumSignificantDigitsよりも小さい時は、エラー。
全体の桁数が指定値より大きいときは、先頭から有効桁で丸められる。
const option ={
maximumSignificantDigits: 5, // 最小有効桁数
};
console.log( (123.4567).toLocaleString( "ja-JP",option) );
>> 123.46
console.log( (1234567.89).toLocaleString( "ja-JP",option) );
>> 1,234,600
minimumFractionDigits
小数部の最小桁数を指定する。
0から20で指定。
初期値は0。ただしstyleが"currency"のときは、通貨の設定に従う。
minimumSignificantDigits、maximumSignificantDigitsのどちらかが指定されているときは、無効。
maximumFractionDigits
小数部の最大桁数を指定する。
0から20で指定。
初期値は3。ただしstyleが"currency"のときは、通貨の設定に従う。
また、styleが"percent"のときは3。
minimumSignificantDigits、maximumSignificantDigitsのどちらかが指定されているときは、無効。
有効時、minimumFractionDigitsより小さい時は、エラー。
minimumIntegerDigits
整数部の最小桁数を指定する。
1から21で指定。
初期値は1。
minimumSignificantDigits、maximumSignificantDigitsが指定されていても、有効。
calendar
値 | 内容 |
---|---|
buddhist | 仏暦 |
chinese | 中国暦 |
coptic | コプト暦 |
dangi | 韓国暦 |
ethioaa | エチオピア暦、アメテ アレム |
ethiopic | エチオピア暦、アメテ・ミフレット |
gregory | グレゴリオ暦 |
hebrew | ユダヤ暦 |
indian | インド暦 |
islamic | イスラム暦 |
islamic-umalqura | イスラムのウンム・アル・クーラ暦 |
islamic-tbla | 天文学的元期に基づくイスラム暦 |
islamic-civil | イスラム常用暦 |
islamic-rgsa | イスラム暦、サウジアラビア |
iso8601 | ISO8601カレンダー |
japanese | 日本暦 |
persian | ペルシャ暦 |
roc | 中華民国暦 |
timeZone
IANAタイムゾーンとして定義されている文字列を指定する。
例:
timeZone: "Asia/Tokyo"
timeZone: "Etc/GMT-9"
hourCycle
値 | 内容 | 表示サンプル 2023/10/10 0:1:1 |
---|---|---|
h11 | 0時開始。12時間表記 | 2023/10/10 午前0:01:01 |
h12 | 1時開始。12時間表記 | 2023/10/10 午前12:01:01 |
h23 | 0時開始。24時間表記 | 2023/10/10 0:01:01 |
h24 | 1時開始。24時間表記 | 2023/10/10 24:01:01 |
hour12が指定されている場合、無効。
hour12
値 | 内容 |
---|---|
true | 12時間制で表示 |
false | 24時間制で表示 |
0時または1時開始かどうかについては、ロケールに依存する。
formatMatcher
値 | 内容 |
---|---|
basic(規定値) | 規定のアルゴリズムでフォーマットを検索する |
best fit | 実装依存のアルゴリズムでフォーマットを検索する |
dateStyle
値 | 内容 | 表示サンプル |
---|---|---|
full | 日付を最も長い形式で表示 | 2023年10月25日水曜日 |
long | 日付を長い形式で表示 | 2023年10月25日 |
medium | 日付を中程度の長さで表示 | 2023/10/25 |
short | 日付を短い形式で表示 | 2023/10/25 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
Weekday、Era、Year、Month、Day、DayPeriod、Hour、Minute、Second、FractionalSecondDigits、TimeZoneName
このオプションを使用すると、時刻が表示されません。
時刻を表示するときはtimeStyleを併用します。
timeStyle
値 | 内容 | 表示サンプル |
---|---|---|
full | 時刻を最も長い形式で表示 | 0時01分01秒 GMT+09:00 |
long | 時刻を長い形式で表示 | 0:01:01 GMT+9 |
medium | 時刻を中程度の長さで表示 | 0:01:01 |
short | 時刻を短い形式で表示 | 0:01 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
Weekday、Era、Year、Month、Day、DayPeriod、Hour、Minute、Second、FractionalSecondDigits、TimeZoneName
このオプションを使用すると、日時が表示されません。
日時を表示するときはdateStyleを併用します。
weekday
値 | 内容 | 表示サンプル |
---|---|---|
narrow | 週を最も短い形式で表示 | 水 |
short | 週を短い形式で表示 | 水/td> |
long | 週を長い形式で表示 | 水曜日 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションは、週のみを表示します。
era
値 | 内容 | 表示サンプル |
---|---|---|
narrow | 時代を含む日時を最も短い形式で表示 | AD2023/10/25 0:01:01 |
short | 時代を含む日時を短い形式で表示 | 西暦2023/10/25 0:01:01/td> |
long | 時代を含む日時を長い形式で表示 | 西暦2023/10/25 0:01:01 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションは、他のWeekdayなどの個別で日時形式を指定するオプションが併用されないとき、時代と日時が表示されます。
併用されると、時代と併用されたオプションに対応する情報が表示されます。
year
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 年を2桁の数値で表示 | 23年/td> |
numeric | 年をロケールに従って数値で表示 | 2023年 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションは、年のみを表示します。
month
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 月を2桁の数値で表示 | 05月/td> |
numeric | 月をロケールに従って数値で表示 | 5月 |
narrow | 月を最も短い形式で表示 | 5月 |
short | 月を短い形式で表示 | 5月 |
long | 月を長い形式で表示 | 5月 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションは、月のみを表示します。
numericでも2桁で表示されることがあります。
day
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 日を2桁の数値で表示 | 05日/td> |
numeric | 日をロケールに従って数値で表示 | 5日 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションは、日のみを表示します。
numericでも2桁で表示されることがあります。
dayPeriod
値 | 内容 | 表示サンプル |
---|---|---|
narrow | 朝昼夕等を最も短い形式で表示 | 夜中 |
short | 朝昼夕等を短い形式で表示 | 夜中 |
long | 朝昼夕等を長い形式で表示 | 夜中 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションを指定すると、朝昼夕等のみを表示します。
jaロケールでは、時間の区切りが次のようになっています。
※時間の区切りはロケールごとに設定されています。
hour
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 時間を2桁の数値で表示 | 2023/5/5 03時/td> |
numeric | 時間をロケールに従って数値で表示 | 2023/5/5 3時 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションを指定すると、時間のみを表示します。
numericでも2桁で表示されることがあります。
minute
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 分を2桁の数値で表示 | 03/td> |
numeric | 分をロケールに従って数値で表示 | 3 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションを指定すると、分を数値のみで表示します。
numericでも2桁で表示されることがあります。
second
値 | 内容 | 表示サンプル |
---|---|---|
2-digit | 秒を2桁の数値で表示 | 3 |
numeric | 秒をロケールに従って数値で表示 | 3 |
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションを指定すると、秒を数値のみで表示します。
numericでも2桁で表示されることがあります。
fractionalSecondDigits
小数点以下の秒の桁数を1から3の間で指定します。
範囲外を指定するとエラーです。
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
timeZoneName
値 | 内容 | 表示サンプル | 表示サンプル2 |
---|---|---|---|
short | タイムゾーンを短い形式で表示 | 2023/5/5 2:01:05 GMT+9 | 2023/5/5 2:01:05 JST |
long | タイムゾーンを長い形式で表示 | 2023/5/5 2時01分05秒 GMT+09:00 | 2023/5/5 2時01分05秒 日本標準時 |
shortOffset | タイムゾーンオフセットを短い形式で表示 | 2023/5/5 2:01:05 GMT+9 | 2023/5/5 2:01:05 GMT+9 |
longOffset | タイムゾーンオフセットを長い形式で表示 | 2023/5/5 2:01:05 GMT+09:00 | 2023/5/5 2:01:05 GMT+09:00 |
shortGeneric | タイムゾーンを汎用的な短い形式で表示 | 2023/5/5 2:01:05 GMT+9 | 2023/5/5 2:01:05 JST |
longGeneric | タイムゾーンを汎用的な長い形式で表示 | 2023/5/5 2:01:05 GMT+09:00 | 2023/5/5 2:01:05 日本標準時 |
表示サンプル2は、timeZoneに"Asia/Tokyo"をセットして、表示したものです。
このオプションと、次のいずれかのオプションを同時に使用するとエラーです。
dateStyle、timeStyle
このオプションのみを指定すると、日時とタイムゾーンが表示されます。
更新日:2024/03/19
関連記事
スポンサーリンク
記事の内容について
こんにちはけーちゃんです。
説明するのって難しいですね。
「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。
裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。
掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。
ご意見、ご指摘はこちら。
https://note.affi-sapo-sv.com/info.php
このサイトは、リンクフリーです。大歓迎です。