JavaScript

Intl.RelativeTimeFormat.prototype.format() メソッド


編集:2023.01.12 by T.A.

[Edge]。→

Intl.RelativeTimeFormat で、指定内容を相対時間として書式化して文字列で返します。

構文
Intl.RelativeTimeFormat.format(value, unit)
表示例「」内のフォントは「MS ゴシック」
Intl.RelativeTimeFormat Intl.RelativeTimeFormat
value 相対値を表す数値。
unit 国際化された相対時間のメッセージに使用する単位を表す文字列。値は以下の何れか。

英語などでは複数形の表現も可能。

DA=new Intl.RelativeTimeFormat(○○);
D=DA.format(new Date(□□);
year 「年」

D: 「1 年前」('ja'、-1, 'year')

quarter 「四半世紀」

D: 「1 四半期前」('ja'、-1, 'quarter')

month 「月」

D: 「1 か月前」('ja'、-1, 'month')

week 「週」

D: 「1 週間前」('ja'、-1, 'week')

day 「日」

D: 「1 日前」('ja'、-1, 'day')

hour 「時」

D: 「1 時間前」('ja'、-1, 'hour')

minute 「分」

D: 「1 分前」('ja'、-1, 'minute')

second 「秒」

D: 「1 秒前」('ja'、-1, 'second')

戻り値

文字列。

DA=new Intl.RelativeTimeFormat('ja');  //日本語。
D=DA.format(-1, 'week');  //-1で週。
	//=[string]:1 週間前
D=DA.format(1, 'week');  //1で週。
	//=[string]:1 週間後
D=DA.format(-5, 'week');  //-5で週。
	//=[string]:5 週間前
DA=new Intl.RelativeTimeFormat('en');  //英語。
D=DA.format(-1, 'week');  //-1で週。
	//=[string]:1 week ago
D=DA.format(-5, 'week');  //-5で週。
	//=[string]:5 weeks ago
	//↑複数形も表現できている。
DA=new Intl.RelativeTimeFormat('ja-u-nu-fullwide');  //日本語、数字を全角。
D=DA.format(-1, 'week');  //-1で週。
	//=[string]:1 週間前
DA=new Intl.RelativeTimeFormat('ja-u-nu-hanidec');  //日本語、数字を漢字。
D=DA.format(-1, 'week');  //-1で週。
	//=[string]:一 週間前

RelativeTimeFormat()


テスト