我有一个简单的html块,如:
8
使用jquery我试图在值(8)中添加1.
var currentValue = $("#replies").text(); var newValue = currentValue + 1; $("replies").text(newValue);
发生的事情是它出现如下:
81
然后
811
不是9,这将是正确的答案.我究竟做错了什么?
parseInt()将强制它为integer类型,如果无法执行转换,则为NaN(不是数字).
var currentValue = parseInt($("#replies").text(),10);
第二个参数(基数)确保将其解析为十进制数.
Parse int是你应该在这里使用的工具,但是像任何工具一样,它应该被正确使用.使用parseInt时,应始终使用radix参数以确保使用正确的base
var currentValue = parseInt($("#replies").text(),10);
整数被转换为字符串而不是反之亦然.你要:
var newValue = parseInt(currentValue) + 1
在IE中,parseInt对我不起作用.所以我只是在你想要的变量上使用+作为整数.
var currentValue = $("#replies").text(); var newValue = +currentValue + 1; $("replies").text(newValue);