js toLocaleString安卓和IOS兼容问题

时间:2025-03-29 20:39:42

需求:需要在前端进行对浮点数添加千分符。
原来处理:

var num = ();

发现在我安卓的手机上数字是空的,然后查看了同事的手机,发现IOS的浏览器都能正常显示,部分安卓手机显示是空。然后安卓手机用自带浏览器打开页面,数字显示是正常的。基本确定是安卓版微信浏览器没有兼容toLocaleString函数,导致有差异。
解决:不用toLocaleString函数进行添加千分符,改用正则的方式。

function addThousandthSign (numStr)  {
    var regForm = /(\d{1,3})(?=(\d{3})+(?:$|\.))/g;
    return ().replace(regForm,"$1,");
}