JavaScript

Intl.NumberFormat.prototype.formatToParts() メソッド


編集:2023.01.11 by T.A.

[Edge]。→

Intl.NumberFormat で指定数値を書式化して、その部分毎のデータ オブジェクトを配列で返します。

構文
Intl.NumberFormat.formatToParts([number])
Intl.NumberFormat Intl.NumberFormat
number 省略可Number または BigInt
戻り値

プロパティ type、value を持つオブジェクトの配列。

type
タイプを表す文字列。値: 例「」内のフォントは「MS ゴシック」。
値の意味value
integer 整数部の数値 例: 「12
group 例: 「,
decimal 小数点。 例: 「.
fraction 小数部の数値 例: 「345
currency 通貨記号 例: 「
minusSign マイナス符号 例: 「-
plusSign プラス符号 例: 「+
exponentSeparator 指数記号 例: 「E
exponentMinusSign 指数部のマイナス符号 例: 「-
exponentInteger 指数部の数値 例: 「14
compact 例: 「
value
type に対応した値の文字列。値の例は上記を参照。
DA=new Intl.NumberFormat('ja');  //日本語。
D=DA.formatToParts(12345.6789);  //=[object]:[object Object],[object Object],[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
	//4=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:12
D[1]=[object]:[object Object]
	//type=[string]:group
	//value=[string]:,
D[2]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:345
D[3]=[object]:[object Object]
	//type=[string]:decimal
	//value=[string]:.
D[4]=[object]:[object Object]
	//type=[string]:fraction
	//value=[string]:679
DA=new Intl.NumberFormat('ja', {currency:'JPY', currencyDisplay:'symbol', style:'currency'});  //日本語、通貨は日本円、シンボル表示、書式は通貨。
D=DA.formatToParts(12345);  //=[object]:[object Object],[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:currency
	//value=[string]:¥
D[1]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:12
D[2]=[object]:[object Object]
	//type=[string]:group
	//value=[string]:,
D[3]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:345
DA=new Intl.NumberFormat('ja-u-nu-fullwide');  //日本語で全角数字。
D=DA.formatToParts(12345);  //=[object]:[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:12
D[1]=[object]:[object Object]
	//type=[string]:group
	//value=[string]:,
D[2]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:345
DA=new Intl.NumberFormat('ja');  //日本語。
D=DA.formatToParts(-12);  //=[object]:[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:minusSign
	//value=[string]:-
D[1]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:12
DA=new Intl.NumberFormat('ja', {signDisplay:'always'});  //日本語、符号:常に。
D=DA.formatToParts(12);  //=[object]:[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:plusSign
	//value=[string]:+
D[1]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:12
DA=new Intl.NumberFormat('ja', {notation:'scientific'});  //日本語、書式:指数表示。
D=DA.formatToParts(12345);  //=[object]:[object Object],[object Object],[object Object],[	//object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
	//4=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:1
D[1]=[object]:[object Object]
	//type=[string]:decimal
	//value=[string]:.
D[2]=[object]:[object Object]
	//type=[string]:fraction
	//value=[string]:235
D[3]=[object]:[object Object]
	//type=[string]:exponentSeparator
	//value=[string]:E
D[4]=[object]:[object Object]
	//type=[string]:exponentInteger
	//value=[string]:4
DA=new Intl.NumberFormat('ja', {notation:'scientific'});  //日本語、書式:指数表示。
D=DA.formatToParts(0.12345);  //=[object]:[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
	//4=[object]:[object Object]
	//5=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:1
D[1]=[object]:[object Object]
	//type=[string]:decimal
	//value=[string]:.
D[2]=[object]:[object Object]
	//type=[string]:fraction
	//value=[string]:235
D[3]=[object]:[object Object]
	//type=[string]:exponentSeparator
	//value=[string]:E
D[4]=[object]:[object Object]
	//type=[string]:exponentMinusSign
	//value=[string]:-
D[5]=[object]:[object Object]
	//type=[string]:exponentInteger
	//value=[string]:1
DA=new Intl.NumberFormat('ja', {notation:'compact'});  //日本語、書式:簡易表示。
D=DA.formatToParts(12345);  //=[object]:[object Object],[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
D[0]=[object]:[object Object]
	//type=[string]:integer
	//value=[string]:1
D[1]=[object]:[object Object]
	//type=[string]:decimal
	//value=[string]:.
D[2]=[object]:[object Object]
	//type=[string]:fraction
	//value=[string]:2
D[3]=[object]:[object Object]
	//type=[string]:compact
	//value=[string]:万

テスト