2016-04-13 6 views
1

通貨のアルゼンチンペソ(ARS)表記は、ドルが米国とは正反対のものであるようです。 ,は小数点区切り文字として使用され、.は桁区切り文字として使用されます。フロートを通貨に変換するアルゼンチンペソ

  • 1121 =>$1.121,00
  • 1000.5 =>$1.000,50
  • 85.72 =>$85,72

私はnumeralnpm numeral js)に見てきたと私はにフロートを変換することができていません上記の通貨書式。

は、ここに私が試したものです:

> numeral('87.75').format('$0.0,00') 
'$87.7500' 
> numeral('87.75').format('$0,0.00') 
'$87.75' 
> numeral('87.75').format('$0,00') 
'$88' 
> numeral('87.75').format('$0.00') 
'$87.75' 
> numeral('87.75').format('$00,00') 
'$88' 
> numeral('87.75').format('$0.00') 
'$87.75' 
> numeral('87.75').format('$00,00') 
'$88' 
> numeral('87.75').format('$00,00.00') 
'$87.75' 
> numeral('87.75').format('$0[.]0.00') 
'$87.8' 
> numeral('87.75').format('$0[.]0[.]00') 
'$87.8' 
> numeral('87.75').format('$0[.]0[,]00') 
'$87.75' 
> numeral('87.75').format('$0[,]0[,]00') 
'$88' 

これらは、すべての文字列ですが、それは、フォーマットに影響を与えるべきではありません。

+1

あなたは常に '' toString' –

+0

からreplace'は私がフィールドには専門知識を持っていないだろうが、[のtoLocaleString](https://developer.mozilla.org/en/docs/Web/できる最悪の場合は、 JavaScript/Reference/Global_Objects/Number/toLocaleString)help? –

答えて

1

あなたがあなた自身のフォーマットを作成する必要があります。

はここアルゼンチンペソの通貨として番号をフォーマットするためにそれを使用した例です。区切り文字を定義する方法の例については、numeric.jsのドキュメントを「言語」セクションまでスクロールしてください。

numeral.language('es_ar', { 
    delimiters: { 
     thousands: '.', 
     decimal: ',' 
    }, 
    currency: { 
     symbol: '$' 
    } 
}); 

numeral.language('es_ar'); 

numeral(1087.76).format('$0,0.00') 
> "$1.087,76" 
0

toLocaleStringは、お探しの機能の可能性が高いです。あなたはread about it hereです。

var value = 1234.56; 
var result = value.toLocaleString('es-ar', { 
    style: 'currency', 
    currency: 'ARS', 
    minimumFractionDigits: 2 
}); 

console.log(result); // Prints "$1.234,56" 
+0

私はサーバとブラウザの両方で動作するものを望んでいました。これはクールですが、ありがとうございます。 – ThomasReggi

+0

これは両方で動作します(ES5機能です)。ただし、現時点ではブラウザのサポートは現代のブラウザのみに限定されています。 (特にSafariはまだそれをサポートしていません) – Mark