4

ユーザーがボーナスを計算できるようにするJavaScriptコードを書いています。それは簡単な数学です。年俸 x ペイアウト率 = あなたのペイアウト。

すべてが構築され、動作しますが、形式について質問があります。

支払い額を $4000.3 と表示する代わりに、そこにカンマを入れ、セントの部分にゼロを追加して、... $4,000.30 と表示するようにします。(金額は一例です)

これを行う方法がわかりません。以下の私のコード計算では、給与 * 支払い額 / 100 の計算を行い、次に Math.round を実行して小数点以下 2 桁を丸めますが、追加するために何を追加または微調整すればよいかわかりません。カンマを数千単位で (ちなみに、数百万単位になることはありません)、最後にゼロを追加します。

どんな助けでも大歓迎です。私はただ正しい方向に導かれる必要があります。ありがとう!

電卓のこの部分のコードは次のとおりです。

<script type="text/javascript">
function calculate()
{
   var salary = document.calculateBonus.salary.value;
   var payout = document.calculateBonus.payout.value;
   var answer = (salary * payout / 100);
   answer = Math.round(answer * 100) / 100;
   if(document.calculateBonus.salary.value == "" )
   {
     alert("Please enter your salary");
     document.calculateBonus.salary.focus();
     return false;
   }
   if(document.calculateBonus.payout.value == "" )
   {
     alert("Please put in your payout percentage");
     document.calculateBonus.payout.focus();
     return false;
   }
   (document.getElementById('payoutText').innerHTML =
   ("Your Bonus Payout is $" + answer));
   return false;
}
</script>
4

1 に答える 1

1

これは、単純なユースケースで機能するようです

var answer = salary.toFixed(2);                     // convert to string
answer = answer.replace(/(\d)(\d{3})\./, "$1,$2."); // look for four digits and '.'

より短い正規表現が利用可能かもしれません...

于 2013-06-05T14:44:32.847 に答える