使用jquery添加两个变量
var a = 1; var b = 2; var c = a+b;
c
将显示为12
; 但我需要3
我如何使用jQuery做到这一点?
看起来你有字符串而不是数字,你需要parseInt()
或parseFloat()
(如果它们可能是小数),如下所示:
var a = "1"; var b = "2"; var c = parseInt(a, 10) + parseInt(b, 10); //or: var c = parseFloat(a) + parseFloat(b);
你可以在这里测试差异 ,值得注意的是这些不是jQuery而是基础JavaScript函数,所以这不依赖于jQuery库。
绝对使用jQuery
因为jQuery的强大function显然是无与伦比的,这里是如何使用100%的jQuery:
var a = 1; var b = 2; $("").appendTo($(document));
现在c
将保留你的结果,你只使用jQuery! 正如你所看到的,jQuery真的很棒,因为它可以做各种各样的事情
这也很有效,因为a
或b
是字符串无关紧要!
没有足够的jQuery?
var a = 1; var b = 2; $("").appendTo('body'); var c = $("#abc").val();
这个答案是用100%jQuery完成的,因为jQuery非常棒,但只是小心使用它,因为它有时可能无法正常工作。
jQuery算术插件
您还可以使用革命性的jQuery Arithmetic Plugin,它已经解决了超过4294967295(>> 0 === -1)国家的世界和平:
var a = 1; var b = 2; var c = $.add(a,b);
虽然这一切都很棒(这还没有确认),但在jQuery -3.0.1中,我听说你将能够以这种方式添加数字:
$.number($.one, $.two).add($.number($.three, $.four))
这增加了12(一+两)到34(三+四)
试试这个 –
var c = parseInt(a, 10) + parseInt(b, 10);
试试这个:
var a = 1; var b = 2; var c = (+a) + (+b); alert(c); //or whatever you want
这将执行从基于ID选择的输入变量提供的两个变量的添加。
var salary, tds, netSalary; salary = parseInt($("#txtSalary").val()); $("#txtTds").on('mouseenter focus', function () { tds = parseInt($("#txtSalary").val() * (0.1)); $("#txtTds").val(tds); }); $("#txtNetSalary").on('mouseenter focus', function () { netSalary = parseInt($("#txtSalary").val() +("#txtTds").val()); $("#txtNetSalary").val(netSalary); });
var a =10; var b=10; var c=a+b; alert(c); //in double case var e=10.5; var f=10.5; alert(e+f); //forcelly convert to int alert(parseInt(e)+parseInt(f)); //forcelly convert to float alert(parseFloat(a)+parseFloat(b)); Example : https://jsfiddle.net/v0rjek67/6/