40

重複の可能性:
JavaScriptで数値をお金としてフォーマットするにはどうすればよいですか?

簡単なJavaScriptを使用して、インスタント計算を実行するフォームがあります。私の問題は、コンマと小数点以下2桁で正しく表示されるようにフォーマットするのに苦労していることです。

どんな助けでも大歓迎です。ありがとうございました。

    <p>
    <label>My Daily Rate is:</label><br />
<input class="poundsBox" name="shares" id="shares" type="text" /><br />
<br />
<strong>Your Gross Contract Take Home:</strong></p>
<p><span class="result">&pound; <span id="result"></span></span></p>
The above illustration is provided for guidance only. Please complete the request form below for a detailed personal illustration.

<script type="text/javascript">
$("#shares").keyup(function() {
   var val = parseFloat($(this).val());
   // If val is a good float, multiply by 260, else show an error
   val = (val ? val * 260 * 0.88 : "Invalid number");
   $("#result").text(val);
})
</script>
4

2 に答える 2

121

標準のJStoFixedメソッドを使用できます

var num = 5.56789;
var n=num.toFixed(2);

//5.57

カンマを追加するために(1000を区切るために)、次のように正規表現を追加できます(ここnumで、は数字です)。

num.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,")

//100000 => 100,000
//8000 => 8,000
//1000000 => 1,000,000

完全な例:

var value = 1250.223;
var num = '$' + value.toFixed(2).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");

//document.write(num) would write value as follows: $1,250.22

分離文字は国とロケールによって異なります。国によっては、.

于 2013-01-22T20:31:46.847 に答える
2

NumberタイプのtoPrecision()メソッドとtoFixed()メソッドを使用できます。このリンクを確認してくださいJavaScriptで数値をお金としてフォーマットするにはどうすればよいですか?

于 2013-01-22T20:35:11.277 に答える