Javascript中带逗号的数字

Mik*_*ole 27 javascript regex

我有一个javascript函数接受一个数字并对数字执行数学运算.但是,我传入的数字可能会有逗号,而且由于我使用Javascript的经验有限,我在使用该值时遇到了问题.它似乎不把它当作数字类型.

获取值为1,000的参数并将其转换为数字1000的最简单方法是什么?

TSt*_*per 35

您可以将文本框设置为具有onblur()函数,这样当用户尝试离开文本框时,您可以使用javascript 替换函数从值中删除逗号

例如:

  function checkNumeric(objName)
  {
    var lstLetters = objName;

    var lstReplace = lstLetters.replace(/\,/g,'');
  }  
Run Code Online (Sandbox Code Playgroud)

带输入标签:

<input type="text" onblur="checkNumeric(this);" name="nocomma" size="10" maxlength="10"/>
Run Code Online (Sandbox Code Playgroud)


joh*_*vey 23

一种快速而肮脏的方法是使用String.replace()方法:

var rawstring = '1,200,000';
var cleanstring = rawstring.replace(/[^\d\.\-\ ]/g, '');
Run Code Online (Sandbox Code Playgroud)

这将把cleanstring设置为:1200000.假设您使用的是美国格式,则会发生以下转换:

1234 --> 1234
1,234 --> 1234
-1234 --> -1234
-1,234 --> -1234
1234.5 --> 1234.5
1,234.5 --> 1234.5
-1,234.5 --> -1234.5
1xxx234 --> 1234
Run Code Online (Sandbox Code Playgroud)

如果您在其他语言环境中反转'.' 和',',然后你必须在正则表达式中做出改变.