千分位分隔函式

jialiangzai發表於2024-04-18
點選檢視程式碼
新增千分位
function addThousandSeparator(num, separator = ",") {
    return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, separator);
}


num.toString(): 將輸入的數字 num 轉換為字串,以便後續處理。


.replace(/\B(?=(\d{3})+(?!\d))/g, separator): 這裡使用了正規表示式進行替換操作。具體解釋如下:

\B: 表示非單詞邊界,用於匹配不在單詞邊界處的位置。
(?=(\d{3})+(?!\d)): 使用正向預查來匹配每三位數字的位置,但不匹配末尾不足三位的數字。
(\d{3})+: 匹配連續的三位數字。
separator: 作為引數傳入的分隔符,預設為 ,。
g: 表示全域性匹配,即匹配所有滿足條件的位置。

去掉千分位
function deleteThousandSeparator(numberString, separator = ",") {
    return numberString.replace(new RegExp(separator, "g"), "");
}

相關文章