32

我想从 .tpl 文件中的数字中删除逗号(例如将 1,125 更改为 1125 )。该值是动态的${variableMap[key]}

4

6 回答 6

75
var a='1,125';
a=a.replace(/\,/g,''); // 1125, but a string, so convert it to number
a=parseInt(a,10);

希望能帮助到你。

于 2012-09-24T05:23:33.847 回答
20
var a='1,125'
a=a.replace(/\,/g,'')
a=Number(a)
于 2017-03-06T21:53:37.787 回答
8

You can use the below function. This function can also handle larger numbers like 123,123,123.

function removeCommas(str) {
    while (str.search(",") >= 0) {
        str = (str + "").replace(',', '');
    }
    return str;
};
于 2015-01-28T18:59:06.510 回答
4
var s = '1,125';
s = s.split(',').join('');

希望有帮助。

于 2016-05-24T22:09:36.920 回答
2

您可以使用正则表达式进行更改,因为它比拆分连接更快

var s = '1,125';
s = s.replace(/,/g, '');

//output 1125
于 2020-08-05T12:03:56.780 回答
0

传入值可能并不总是字符串。如果传入的值是数字,则替换方法将不可用,并且您将收到错误消息。建议使用 isNaN 查看是否为数字,然后假设为字符串,否则进行替换。

if(isNaN(x)) {
    x = parseInt(x.replace(/[,]/g,''));
}

(不是万无一失的,因为 'not number' 并不能证明它是一个字符串,但除非你正在做一些非常奇怪的事情应该足够好)。您还可以将其他符号添加到字符组以删除其他杂散字符(例如货币符号)。

于 2020-11-06T11:04:58.550 回答