由于某种原因,我的代码返回"0111“,而返回的值应该是3,将数字相加在一起。
是否有更好的方法来编写它从而增加输入文本的值?
var p = $(".p").val();
var r = $(".r").val();
var d = $(".d").val();
var s = $(".s").val();
var checkability = p + r + d + s;
alert(checkability)发布于 2013-09-25 16:55:03
您正在连接字符串,需要将其转换为数字。val()以字符串形式返回数据,或者根据您的类型显式使用parseInt(var, 10)或parseFloat。
简单的方法是不使用一元+算子前缀变量:
var checkability = +p + +r + +d + +s;小提琴
发布于 2013-09-25 16:55:19
当然,最简单的方法是将字符串值强制转换为整数,如:
var p = +$(".p").val();
var r = +$(".r").val();
var d = +$(".d").val();
var s = +$(".s").val();jsFiddle实例
您还可以使用较长的parseInt()函数,如var p = parseInt( $(".p").val(), 10);。
发布于 2013-09-25 16:56:23
使用parseInt使它们成为整数
var p = parseInt($(".p").val(),10);
var r = parseInt($(".r").val(),10);
var d = parseInt($(".d").val(),10);
var s = parseInt($(".s").val(),10);
var checkability = p + r + d + s;
alert(checkability)https://stackoverflow.com/questions/19010853
复制相似问题