舉例:200000.00 格式化為:200,000.00
const formatamount=function (num)
//如果num是負數,則獲取她的符號
var sign = num.indexof("-")> 0 ? '-' : '';
//如果存在小數點,則獲取數字的小數部分
var cents = num.indexof(".")> 0 ? num.substr(num.indexof(".")) : '';
cents = cents.length>1 ? cents : '' ;//注意:這裡如果是使用change方法不斷的呼叫,小數是輸入不了的
//獲取數字的整數數部分
num = num.indexof(".")>0 ? num.substring(0,(num.indexof("."))) : num ;
//如果沒有小數點,整數部分不能以0開頭
if('' == cents)}
//如果有小數點,且整數的部分的長度大於1,則整數部分不能以0開頭
else}
//針對整數部分進行格式化處理,這是此方法的核心,也是稍難理解的乙個地方,逆向的來思考或者採用簡單的事例來實現就容易多了
也可以這樣想象,現在有一串數字字串在你面前,如果讓你給他家千分位的逗號的話,你是怎麼來思考和操作的?
字串長度為0/1/2/3時都不用新增
字串長度大於3的時候,從右往左數,有三位字元就加乙個逗號,然後繼續往前數,直到不到往前數少於三位字元為止
for (var i = 0; i < math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
//將資料(符號、整數部分、小數部分)整體組合返回
return (sign + num + cents);
}複製**
js金額千分位顯示 金額顯示千分位知識點整理
的字元 則它會忽略該字元以及之後的所有字元,返回當前已經解析到的浮點數 c 引數字串首位的空白符會被忽略 注意 如果引數字串的第乙個字元不能被解析成為數字,則 parsefloat 返回nan 提示 您可以通過呼叫 isnan 函式來判斷 parsefloat 的返回結果是否是 nan。如果 讓na...
js 金額數目千分位顯示
應用中金錢數目常常使用千分位分隔,使用js寫了乙個簡單的函式。可以使用字串操作,也可以陣列操作,不過最簡單的還是正則替換。參考別人的方案 假設輸入為1234567.89,正則中先提取出數額的整數部分n 1234567 然後對n繼續使用正則替換,d 表示要查詢乙個數字,是正向肯定預查,標明要查詢的這個...
JS金額千分位加逗號,多種例項
1,在main.js下掛載乙個全域性方法。金額千分位加逗號 vue.prototype.amountrule amount g,1,return defaultamount else 2,在我們的vue 頁面中呼叫該方法。let string 73564172.93 this.amountrule ...