搜尋

首頁  >  問答  >  主體

javascript - 正規表示式 /(\d)(?=(\d{3})+\.)/g

如何將浮點數點左邊的數字每三位加上一個逗號,如12000000.11轉換為『12,000,000.11』?

function commafy(num){

  return num && num
      .toString()
      .replace(/(\d)(?=(\d{3})+\.)/g, function(, ){
          return  + ',';
      });

}
我不知道怎麼去理解這個正規。 /(d)(?=(d{3}) .)/g
不太了解是怎麼運作的

伊谢尔伦伊谢尔伦2788 天前719

全部回覆(1)我來回復

  • 阿神

    阿神2017-05-19 10:37:23

    匹配/(d)(?=(d{3})+.)/g數字後面是三個數字或3的倍數個數字,後面跟小數點。 d{3})+表示3的倍數個數字,如3個數字6個數字等,?=表示後面一定是3的倍數個數字

    回覆
    0
  • 取消回覆