toString・toLocaleString

記事の内容

toString

toStringは、配列を[要素,要素,・・・]の形で文字列に変換します。

toStringの説明図
var ary = ["a", "r", "r", "a", "y"];
var str =  ary.toString();

// 配列なのかの確認
console.log("ary : " + Array.isArray(ary));
console.log("str : " + Array.isArray(str));
出力結果

ary : true
str : false

toLocaleString

toLocaleStringは、指定したロケールにあわせて配列を[要素,要素,・・・]の形で文字列に変換します。

toLocaleStringの説明図

toLocaleString() //ロケールとオプションなし
toLocaleString(locales) //ロケールのみ指定
toLocaleString(locales, options) //ロケールとオプション指定

var ary = [100000, 200000, 300000];

console.log("toLocaleString : " + ary.toLocaleString());
console.log("言語の変換 : " + ary.toLocaleString('ja-JP'));
console.log("単位を付ける : " + ary.toLocaleString('ja-JP', { style: 'currency', currency: 'JPY' }));
出力結果

toLocaleString : 100,000,200,000,300,000
言語の変換 : 100,000,200,000,300,000
単位を付ける : ¥100,000,¥200,000,¥300,000

locales

localesは、配列を任意の言語に変換できます。
種類はたくさんありますが、webブラウザによって表示できないものがあるので代表的なものを載せておきます。

localesの説明図
var ary = [100000];

console.log("アラビア : " + ary.toLocaleString('ar-EG'));
console.log("インド : " + ary.toLocaleString('en-IN'));
console.log("中国 : " + ary.toLocaleString('zh-Hans-CN-u-nu-hanidec'));
console.log("日本語 : " + ary.toLocaleString('ja-JP'));
console.log("ドイツ : " + ary.toLocaleString('de-DE'));
出力結果

アラビア : ١٠٠٬٠٠٠
インド : 1,00,000
中国 : 一〇〇,〇〇〇
日本語 : 100,000
ドイツ : 100.000

toLocaleString(options)

style

styleは、使用する通貨フォーマットのスタイルを指定します。

styleの説明図
var ary = [100,200,300];

var currency = { style:'currency', currency:'JPY'}
var percent  = { style:'percent', currency:'JPY'}
var decimal  = { style:'decimal', currency:'JPY'}

console.log("currency(¥) : " + ary.toLocaleString('ja-JP', currency));
console.log("percent(%) : " + ary.toLocaleString('ja-JP', percent));
console.log("decimal(デフォルト) : " + ary.toLocaleString('ja-JP', decimal));
出力結果

currency(¥) : ¥100,¥200,¥300
percent(%) : 10,000%,20,000%,30,000%
decimal(デフォルト) : 100,200,300

currency

currencyは、通貨フォーマットで使用する通貨記号を指定します。

currencyの説明図

JPY //日本円
CNY //中国円
USD //USドル
EUR //ユーロ

var ary = [1000,2000,3000];

var jpy = {style: 'currency', currency: 'JPY'}
var cny = {style: 'currency', currency: 'CNY'}
var usd = {style: 'currency', currency: 'USD'}
var eur = {style: 'currency', currency: 'EUR'}

console.log("JPY : " + ary.toLocaleString('ja-JP', jpy))
console.log("CNY : " + ary.toLocaleString('zh-Hans-CN-u-nu-hanidec', cny))
console.log("USD : " + ary.toLocaleString('de-DE', usd))
console.log("EUR : " + ary.toLocaleString('de-DE', eur))
出力結果

JPY : ¥1,000,¥2,000,¥3,000
CNY : ¥一,〇〇〇.〇〇,¥二,〇〇〇.〇〇,¥三,〇〇〇.〇〇
USD : 1.000,00 $,2.000,00 $,3.000,00 $
EUR : 1.000,00 €,2.000,00 €,3.000,00 €

currencyDisplay

currencyDisplayは、通貨フォーマットをどのように表示するのかを指定します。

currencyDisplayの説明図

symbol //¥のような通貨シンボル
code //ISOの通貨コード
name //円のような通貨名

var ary = [100,200,300]

var symbol = {style:'currency', currency:'JPY', currencyDisplay:'symbol'}
var iso    = {style:'currency', currency:'JPY', currencyDisplay:'code'}
var name   = {style:'currency', currency:'JPY', currencyDisplay:'name'}

console.log("通貨シンボル : " + ary.toLocaleString('ja-JP', symbol))
console.log("ISOの通貨コード : " + ary.toLocaleString('ja-JP', iso))
console.log("通貨名 : " + ary.toLocaleString('ja-JP', name))
出力結果

通貨シンボル : ¥100,¥200,¥300
ISOの通貨コード : JPY 100,JPY 200,JPY 300
通貨名 : 100円,200円,300円

useGrouping

桁区切りを使用するか否かを指定します。 
localesをインド(en-IN)に指定した場合は[lakh/crore/arawb]というインド式の桁区切りになります。
※デフォルトはtrue

useGroupingの説明図
useGrouping(en-IN)の説明図

useGrouping:true //桁区切りあり
useGrouping:false //桁区切りなし

var ary = [10000000000]

// [桁区切りあり]
console.log("[日本] : " + ary.toLocaleString('ja-JP', {useGrouping: true}))
console.log("[インド] : " + ary.toLocaleString('en-IN', {useGrouping: true}))
// [桁区切りなし]
console.log("桁区切り(なし) : " + ary.toLocaleString('en-IN', {useGrouping: false}))
出力結果

[日本] : 10,000,000,000
[インド] : 10,00,00,00,000
桁区切り(なし) : 10000000000

minimumIntegerDigits

使用する整数桁数の、最小数を指定します。 
小数点第3位まで表示し、それ以下の数値は四捨五入されます。
※デフォルトは1 指定可能な値は1~21

minimumIntegerDigitsの説明図
var ary = [1234.56789]

console.log("7の場合 : " + ary.toLocaleString('ja-JP', {minimumIntegerDigits: 7}))
console.log("2の場合 : " + ary.toLocaleString('ja-JP', {minimumIntegerDigits: 2}))
出力結果

7の場合 : 0,001,234.568
2の場合 : 1,234.568

minimumFractionDigits

使用する小数桁数の、最小数を指定します。
小数点第3位まで表示し、それ以下の小数桁数は四捨五入されます。 

minimumFractionDigitsの説明図
var ary = [1234.567,0.0012345]

console.log("6の場合 : " + ary.toLocaleString('ja-JP', {minimumFractionDigits: 6}))
console.log("2の場合 : " + ary.toLocaleString('ja-JP', {minimumFractionDigits: 2}))
出力結果

6の場合 : 1,234.567000,0.001235
2の場合 : 1,234.567,0.001

maximumFractionDigits

使用する小数桁の、最大数を指定します。 
指定以下の小数桁数は四捨五入されます。
※使用可能な値は、0~20

maximumFractionDigitsの説明図
var ary = [1234.56789]

console.log("4の場合 : " + ary.toLocaleString('ja-JP', {maximumFractionDigits: 4}))
console.log("3の場合 : " + ary.toLocaleString('ja-JP', {maximumFractionDigits: 3}))
console.log("2の場合 : " + ary.toLocaleString('ja-JP', {maximumFractionDigits: 2}))
出力結果

4の場合 : 1,234.5679
3の場合 : 1,234.568
2の場合 : 1,234.57

minimumSignificantDigits

使用する有効桁数の最小値を指定します。 
※指定可能な値は1~21で、デフォルト値は1

minimumSignificantDigitsの説明図
var ary = [1234.56789]

console.log(ary.toLocaleString('ja-JP', {minimumSignificantDigits: 11}))
出力結果

1,234.5678900

maximumSignificantDigits

使用する有効桁数の最大値を指定します。
指定以下は四捨五入されます。 
※指定可能な値は1~21で、デフォルト値はminimumSignificantDigits

maximumSignificantDigitsの説明図
var ary = [1234.5678,0.0012345]

console.log("11の場合 : " + ary.toLocaleString('ja-JP', {maximumSignificantDigits: 11}))
console.log("4の場合 : " + ary.toLocaleString('ja-JP', {maximumSignificantDigits: 4}))
console.log("2の場合 : " + ary.toLocaleString('ja-JP', {maximumSignificantDigits: 2}))
出力結果

11の場合 : 1,234.5678,0.0012345
4の場合 : 1,235,0.001235
2の場合 : 1,200,0.0012

記事の内容
閉じる