摘要:常常見到這種場景,數字比較大時每隔位用逗號分隔開思路就是如果是小數的話先用分開得到整數部分,然后反轉整數部分的字符串用正則每個數字加一個逗號然后再反轉回去拼接上小數部分。
常常見到這種場景,數字比較大時每隔3位用逗號分隔開
思路就是如果是小數的話先用split分開得到整數部分,然后反轉整數部分的字符串用正則每3個數字加一個逗號然后再反轉回去拼接上小數部分。
在網上看到了一種實現代碼,這個正則還沒看懂:
function toThousands(str) { return str.replace(/B(?=(d{3})+(?!d))/g, ","); } toThousands("12345678912.12345"); toThousands("12345678912");
以下是我的實現代碼
function fillNumberWithComma(num) { num += ""; if(/^-?d+(.d+)?$/.test(num)) { //確認是數字 var segments = num.split("."); return segments[0].split("").reverse().join("").replace(/(d{3})/g, "$1,").split("").reverse().join("") + (segments[1] ? "." + segments[1] : ""); } return false; } fillNumberWithComma(12345678.12345);
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/82263.html
格式化流 實現格式化的流對象是PrintWriter(字符流類)或PrintStream(字節流類)的實例。 你可能需要的唯一PrintStream對象是System.out和System.err(有關這些對象的更多信息,請參閱命令行中的I/O),當你需要創建格式化的輸出流時,請實例化PrintWriter,而不是PrintStream。 與所有字節和字符流對象一樣,PrintStream和Pri...
摘要:同學前端面試遇到這么一個題目給數字添加千分位分隔符一拿到他給的面試題,感覺挺容易的,不過等自己寫后發現非常考慮邏輯,以及思維能力我是小白上網百度了一波全是用正則表達式來解決的,正則這塊我只懂皮毛,所以感覺有點看不明白,不過這個博客解釋挺清楚 同學前端面試遇到這么一個題目 :給數字添加千分位分隔符 一拿到他給的面試題,感覺挺容易的,不過等自己寫后發現非常考慮邏輯,以及思維能力(我是小白)...
摘要:前言本篇主要介紹基本數據類型,以文本進度條為例,介紹庫的使用。 前言 本篇主要介紹基本數據類型,以文本進度條為例,介紹time庫的使用。 并在最后對蟒蛇繪制的代碼進...
摘要:上次講到是如何解析大整數的,一筆帶過了的處理,再詳細閱讀該函數的源碼,以下是小分析。總結閱讀完這個函數的源碼,學習到的是浮動數與字符串的互相轉換的實現細節,字符串與浮點數之間的關系較復雜,之后還要繼續學習。 上次講到PHP是如何解析大整數的,一筆帶過了number_format的處理,再詳細閱讀該函數的源碼,以下是小分析。 函數原型 string number_format ( flo...
摘要:遞歸思路是在小數點前數位數如果沒有小數點則以最后一位計算,添加,遞歸,在第一個逗號前數位再添加。 想要的效果:123456789.123 --> 123,456,789.123直接貼代碼: function splitK(num) { var decimal = num.split(.)[1] || ;//小數部分 var tempArr = []; var revNumA...
閱讀 1848·2021-08-19 11:12
閱讀 1425·2021-07-25 21:37
閱讀 988·2019-08-30 14:07
閱讀 1267·2019-08-30 13:12
閱讀 651·2019-08-30 11:00
閱讀 3529·2019-08-29 16:28
閱讀 990·2019-08-29 15:33
閱讀 2966·2019-08-26 13:40