將普通的數字轉換為帶千位分隔符格式的數字字串是乙個非常常見的問題,千位分隔符格式的規則是數字的整數部分每三位一組,以「,」分節。小數部分不分節 。
示例:19,351,235.235767
這裡有幾個常見的實現方法。
實現思路是將數字轉換為字元陣列,再迴圈整個陣列, 每三位新增乙個分隔逗號,最後再合併成字串。因為分隔符在順序上是從後往前新增的:比如 1234567新增後是1,234,567 而不是 123,456,7 ,所以方便起見可以先把陣列倒序,新增完之後再倒序回來,就是正常的順序了。要注意的是如果數字帶小數的話,要把小數部分分開處理。
function numformat(num))+$)/g,function($1));})return res;
}var a=1234567894532;
var b=673439.4542;
console.log(numformat(a)); // "1,234,567,894,532"
console.log(numformat(b)); // "673,439.4542"
摘自:
千位分隔符 js 實現
最近被同事問到js如何實現給長數字新增千位分隔符,即 1344444 13,444,444 這是乙個很常見的前端面試題。看起來簡單,剛開始我都懶得寫。仔細一想,挺考邏輯的,實現方法有很多種,可以用三位迴圈 字串陣列分隔,也可以使用正則。剛開自己用js實現了堆疊,太多,不夠優雅,同時也暴露了自己原生j...
js演算法實現千分位分隔符
var str 123456789 9,8,7,6,5,4,3,2,1 function formatcash str console.log formatcash str 複製 另外一種優化演算法,因為字串在 js 每次變化都會重新開闢記憶體,所有轉化為陣列會更加便捷 function f str...
JS給數字加千位分隔符
將普通的數字轉換為帶千位分隔符格式的數字字串是乙個非常常見的問題,千位分隔符格式的規則是數字的整數部分每三位一組,以 分節。小數部分不分節 示例 19,351,235.235767 這裡有幾個常見的實現方法。實現思路是將數字轉換為字元陣列,再迴圈整個陣列,每三位新增乙個分隔逗號,最後再合併成字串。因...