js金額千分位顯示 前端JS 金額千分位格式化函式

2021-10-13 14:36:03 字數 991 閱讀 9381

舉例: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 ...