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