簡體   English   中英

將逗號分隔符添加到帶有2個小數點的數字

[英]Add comma separator to a numbers with 2 decimal points

我設法使用戶輸入到2個小數點: 在此處輸入圖片說明 以下是我的兩個輸入字段的代碼:

$('.ave-daily-accbalance').blur(function(){
    var num = parseFloat($(this).val()) || 0;
    var cleanNum = num.toFixed(2);
    $(this).val(cleanNum);

    });

    $('.facilitylimit').blur(function(){
    var num = parseFloat($(this).val()) || 0;
    var cleanNum = num.toFixed(2);
    $(this).val(cleanNum);

    });

但是現在我想用逗號分隔輸入。 因此,如果用戶輸入500000-它會自動轉換為500,000.00

您可以使用Number.prototype.toLocaleString()文檔 )在您的情況下,您想使用第二個options參數來指定所需的小數位數:

 var num = 200000.001231; var cleanNum = num.toLocaleString('en', {minimumFractionDigits: 2, maximumFractionDigits: 2}); console.log(cleanNum); 

請注意,options參數不適用於所有瀏覽器和版本。 如果兼容性是關鍵,請使用不帶參數的num.toLocaleString() ,並根據需要修剪/追加小數:

 var num = 20000.001231; var cleanNum = num.toLocaleString('en'); var splitNum = cleanNum.split('.'); if (splitNum.length < 2) { // Need to append .00 if num was an integer cleanNum = cleanNum + '.00'; } else { // Append 0 if there was only 1 decimal, otherwise trim // to 2 decimals var decimals = splitNum[1]; decimals = decimals.length < 2 ? decimals + '0' : decimals.slice(0, 2); cleanNum = splitNum[0] + '.' + decimals; } console.log(cleanNum); 

希望這可以幫助!

這個解決方案怎么樣。 希望能幫助到你!

 var x = 500000; function formatNumber(num) { var arr = num.toFixed(2).split("."); return arr[0].split("").reduceRight(function(acc, num, i, orig) { if ("-" === num && 0 === i) { return num + acc; } var pos = orig.length - i - 1 return num + (pos && !(pos % 3) ? "," : "") + acc; }, "") + (arr[1] ? "." + arr[1] : ""); } console.log(formatNumber(x)); 

嘗試這個:

 var n = "76432949.13354"; var nf = Number(parseFloat(n).toFixed(2)).toLocaleString('en'); document.write (nf); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM