Intl.DateTimeFormat【国際化日時フォーマット】コンストラクタ・プロパティ・メソッド

new Intl.DateTimeFormat()【コンストラクタ】

メモ

構文

new Intl.DateTimeFormat([locales [, options]])

戻り値Intl.DateTimeFormat【国際化日時フォーマット】 オブジェクト
localesBCP 47 の言語タグの文字列 または 配列 (省略:デフォルトのロケール) 詳細は下記参照
optionsオプション (実装依存) 詳細は下記参照
BCP 47 の言語タグ
説明
ja日本語
ja-JP日本語 (日本)
en-US英語 (アメリカ)
en-GB英語 (イギリス)
de-DEドイツ語 (ドイツ)
fr-FRフランス語 (フランス)
以下の Unicode 拡張 数値フォーマット をサポート (実装依存)

(-u-nu-○)
説明コード
arabアラビア・インド数字٩ ~ ٠U+0660 ~ U+0669
arabextペルシア数字۰ ~ ۹U+06F0 ~ U+06F9
baliバリ数字U+1B50 ~ U+1B59
bengベンガル数字০ ~ ৯U+09E6 ~ U+09EF
devaデーヴァナーガリー数字० ~ ९U+0966 ~ U+096F
fullwide全角数字0 ~ 9U+FF10 ~ U+FF19
gujrグジャラート数字૦ ~ ૯U+0AE6 ~ U+0AEF
guruグルムキー数字੦ ~ ੯U+0A66 ~ U+0A6F
hanidec漢数字〇 ~ 九 U+3007, U+4E00, U+4E8C, U+4E09, U+56DB,
U+4E94, U+516D, U+4E03, U+516B, U+4E5D
khmrクメール数字០ ~ ៩U+17E0 ~ U+17E9
kndaカンナダ数字೦ ~ ೯U+0CE6 ~ U+0CEF
laooラオ数字໐ ~ ໙U+0ED0 ~ U+0ED9
latn算用数字 (アラビア数字)0 ~ 9U+0030 ~ U+0039
limbリンブ数字U+1946 ~ U+194F
mlymマラヤーラム数字൦ ~ ൯U+0D66 ~ U+0D6F
mongモンゴル数字᠐ ~ ᠙U+1810 ~ U+1819
mymrミャンマー数字၀ ~ ၉U+1040 ~ U+1049
oryaオリヤー数字뙦 ~ 뙯U+0B66 ~ U+0B6F
tamldecタミル数字௦ ~ ௯U+0BE6 ~ U+0BEF
teluテルグ数字౦ ~ ౯U+0C66 ~ U+0C6F
thaiタイ数字๐ ~ ๙U+0E50 ~ U+0E59
tibtチベット数字༠ ~ ༩U+0F20 ~ U+0F29
以下の Unicode 拡張 カレンダーフォーマット をサポート (実装依存)

(-u-ca-○)
説明
buddhistタイ仏教暦
chinese中国暦
copticコプト暦
ethioaaダンギ暦
ethiopicエチオピア暦
gregoryグレゴリオ暦 (西暦)
hebrewユダヤ暦
indianインド国定暦
islamicイスラム暦 (1)
islamiccイスラム暦 (2)
iso8601ISO 8601
japanese和暦
persianペルシア暦
roc中華民国暦
オプション (実装依存)
オプション値 (太字:デフォルト値)説明
localeMatcherlookup:Lookupアルゴリズム
best fit:最適アルゴリズム
ロケールマッチングアルゴリズム
formatMatcherbasic:Basicアルゴリズム
best fit:最適アルゴリズム
書式マッチングアルゴリズム
hour12true:12 時間形式
false:24 時間形式
12/24 時間形式
weekdaynarrow:狭い形式
short:短い形式
long:長い形式
曜日
eranarrow:狭い形式
short:短い形式
long:長い形式
年号
year2-digit:2桁
numeric:ゼロサプレス
month2-digit:2桁
numeric:ゼロサプレス
narrow:狭い形式
short:短い形式
long:長い形式
day2-digit:2桁
numeric:ゼロサプレス
hour2-digit:2桁
numeric:ゼロサプレス
minute2-digit:2桁
numeric:ゼロサプレス
second2-digit:2桁
numeric:ゼロサプレス
timeZoneUTC・Asia/Tokyo・America/New_York 等 タイムゾーン (IANA)
timeZoneNameshort:短い形式
long:長い形式
タイムゾーン名

var date = new Date(Date.UTC(2001, (2 - 1), 3, 4, 5, 6));
var dtf = new Intl.DateTimeFormat();
console.log(dtf.format(date));
// 出力:2001/2/3

dtf = new Intl.DateTimeFormat("en-US");
console.log(dtf.format(date));
// 出力:2/3/2001

dtf = new Intl.DateTimeFormat("en-GB");
console.log(dtf.format(date));
// 出力:03/02/2001

var options = { year:'2-digit', month:'2-digit', day:'2-digit', hour12:true, hour:'2-digit', minute:'2-digit', second:'2-digit', weekday:'narrow', timeZone:'UTC', timeZoneName:'long' };
dtf = new Intl.DateTimeFormat("en-US", options);
console.log(dtf.format(date));
// 出力:S, 02/03/01, 4:05:06 AM GMT

options = { year:'numeric', month:'numeric', day:'numeric', hour12:false, hour:'2-digit', minute:'numeric', second:'numeric', weekday:'short', timeZone:'Asia/Tokyo', timeZoneName:'short' };
dtf = new Intl.DateTimeFormat("en-US", options);
console.log(dtf.format(date));
// 出力:Sat, 2/3/2001, 13:05:06 GMT+9

options = { year:'2-digit', month:'narrow', day:'2-digit', hour12:true, hour:'2-digit', minute:'2-digit', second:'2-digit', weekday:'long', timeZone:'Asia/Tokyo', timeZoneName:'long' };
dtf = new Intl.DateTimeFormat("en-US", options);
console.log(dtf.format(date));
// 出力:Saturday, F 03, 01, 1:05:06 PM Japan Standard Time

options = { year:'numeric', month:'short', day:'numeric', hour12:false, hour:'numeric', minute:'numeric', second:'numeric', weekday:'narrow', timeZone:'America/New_York', timeZoneName:'short' };
dtf = new Intl.DateTimeFormat("en-US", options);
console.log(dtf.format(date));
// 出力:F, Feb 2, 2001, 23:05:06 EST

options = { year:'2-digit', month:'long', day:'2-digit', hour12:true, hour:'numeric', minute:'2-digit', second:'2-digit', weekday:'short', timeZone:'America/New_York', timeZoneName:'long' };
dtf = new Intl.DateTimeFormat("en-US", options);
console.log(dtf.format(date));
// 出力:Fri, February 02, 01, 11:05:06 PM Eastern Standard Time

options = { era:'narrow', year:'numeric', month:'numeric', day:'numeric', hour:'numeric', minute:'numeric', second:'numeric', weekday:'narrow', hour12:true, timeZoneName:'long' };
dtf = new Intl.DateTimeFormat("ja-JP-u-ca-japanese", options);
console.log(dtf.format(date));
// 出力:H13年2月3日土 13時05分06秒 日本標準時

options = { era:'short', year:'2-digit', month:'2-digit', day:'2-digit',  hour:'2-digit', minute:'2-digit', second:'2-digit', weekday:'short', hour12:false, timeZoneName:'short' };
dtf = new Intl.DateTimeFormat("ja-JP-u-ca-japanese", options);
console.log(dtf.format(date));
// 出力:平成13年02月03日土 13:05:06 JST

options = { era:'long', year:'numeric', month:'numeric', day:'numeric', hour:'numeric', minute:'numeric', second:'numeric', weekday:'long', hour12:true, timeZoneName:'long' };
dtf = new Intl.DateTimeFormat("ja-JP-u-ca-japanese", options);
console.log(dtf.format(date));
// 出力:平成13年2月3日土曜日 13時05分06秒 日本標準時

options = { era:'long', year:'numeric', month:'long', day:'numeric', weekday:'long' };
dtf = new Intl.DateTimeFormat("ja-JP-u-ca-japanese-nu-hanidec", options);
console.log(dtf.format(date));
// 出力:平成一三年二月三日土曜日

dtf = new Intl.DateTimeFormat();
console.log(dtf.format());
// 出力:20xx/x/x 現在日付

関連


Intl.DateTimeFormat.prototype.format【フォーマット関数】

メモ

構文

format(date)

戻り値フォーマット文字列
date日時 (省略:現在日時)

// Array.map ()【配列変換生成】利用
var days = [ new Date(2001, (2 - 1), 3), new Date(2011, (3 - 1), 4), new Date(2021, (4 - 1), 5) ];
var dtf = new Intl.DateTimeFormat();
console.log(days.map(dtf.format)); // 出力:["2001/2/3", "2011/3/4", "2021/4/5"]

関連


Intl.DateTimeFormat.prototype.resolvedOptions()【オプション取得】

メモ

  • 以下のプロパティを持ったオプション オブジェクトを取得 (デフォルト値がない未指定のプロパティは存在しない)
    (new Intl.DateTimeFormat () 【コンストラクタ】も参照)
    プロパティ説明
    localeBCP47言語タグ
    calendarUnicode 拡張 カレンダーフォーマット
    numberingSystemUnicode 拡張 数値フォーマット
    timeZoneタイムゾーン
    hour1212/24 時間形式
    weekday曜日
    era年号
    year
    month
    day
    hour
    minute
    second
    timeZoneNameタイムゾーン名

構文

resolvedOptions()

戻り値オプション オブジェクト

var dtf = new Intl.DateTimeFormat();
console.log(dtf.resolvedOptions());
// 出力:
// object {
// calendar:"gregory"
// day:"numeric"
// locale:"ja"
// month:"numeric"
// numberingSystem:"latn"
// timeZone:"Asia/Tokyo"
// year:"numeric"
// }

console.log(dtf.format());
// 出力:20xx/xx/xx 現在日付

関連


Intl.DateTimeFormat.supportedLocalesOf()【サポート ロケール取得】

メモ

  • サポートされるロケールの配列を取得

構文

Intl.DateTimeFormat.supportedLocalesOf( locales [, options])

戻り値サポートされるロケールの配列
localesBCP 47 の言語タグの文字列 または 配列
new Intl.DateTimeFormat () 【コンストラクタ】localesを参照
optionsオプション (localeMatcher【ロケールマッチングアルゴリズム】)
new Intl.DateTimeFormat () 【コンストラクタ】optionsを参照

関連