Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将逗号添加到数字后执行计算_Javascript - Fatal编程技术网

Javascript 将逗号添加到数字后执行计算

Javascript 将逗号添加到数字后执行计算,javascript,Javascript,我有以下函数,它在文本字段中添加逗号。示例:5000000返回为5000000 函数addComma(值){ values.value=values.value.replace(“,”,”).replace(/\B(?=(\d{3})+(?!\d))/g,”,”; } if(document.getElementById(“值”)) payment=parseInt(document.getElementById(“值”).value) Rent您可以使用以下命令除去逗号: values =

我有以下函数,它在文本字段中添加逗号。示例:
5000000
返回为
5000000

函数addComma(值){
values.value=values.value.replace(“,”,”).replace(/\B(?=(\d{3})+(?!\d))/g,”,”;
}
if(document.getElementById(“值”))
payment=parseInt(document.getElementById(“值”).value)

Rent
您可以使用以下命令除去逗号:

values = values.replace(/\,/g,'')
这基本上删除了字符串中的所有逗号 现在,使用以下方法将有效表示数字的字符串转换为实际数字:

values = Number(values)

希望对你有帮助

您试图对添加了逗号的字符串使用
parseInt
parseInt
将在第一个非数字字符后停止解析:

如果parseInt遇到的字符不是指定基数中的数字,它将忽略该字符和所有后续字符,并返回解析到该点的整数值。parseInt将数字截断为整数值。允许使用前导空格和尾随空格

console.log(parseInt('123456');//123456

console.log(parseInt('123456');//123
做以下事情对我来说很有效

payment = document.getElementById("values").value;
var Return = payment.replace(/\,/g,'');

我没有使用parseInt,而是声明了另一个变量并删除了逗号以执行任何进一步的计算

这有什么用?为什么它能解决这个问题?请尝试添加更多细节;很少有人认为“只做这个”是一个“完整”和/或“好”的答案。翻译一个逗号分隔的数字字符串在
parseInt
s usecasenop中很好,在找到第一个逗号后,
parseInt
将停止解析,我将把它添加到答案中,@SpeedOfRound
parseInt()
在第一个非数字字符处停止解析。From:如果parseInt遇到的字符不是指定基数中的数字,它将忽略该字符和所有后续字符,并返回解析到该点的整数值。请注意,虽然不是必需的,但最好将可选的第二个参数包含到
parseInt()
,即基数。这可以防止意外执行除预期基本操作以外的基本操作。仅供参考:没有类似
的元素。有
,但它要求您将表单字段嵌套在表单字段中,表单字段是它的标签,或者为元素指定一个
for
属性,该属性的值是它作为标签的元素的
id
。如果我没有误解您的要求,那么一旦添加逗号,它就不再是一个数字。这是一根绳子。因此,任何尝试用另一个数字进行加法、减法、乘法等操作都会导致NaN。执行类似操作的最佳方法是对该数字执行所有操作,然后使用逗号对其进行格式化。您的输入装饰函数无法很好地处理退格。除非它是100%完美的,否则我认为这将是一个比它的价值更多的麻烦。