var a = 1;
var b = 2;
var c = a+b;
c
будет отображаться как 12
; но мне нужно 3
Как мне это сделать с помощью 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, очевидно, не имеет себе равных, вот как это делается со 100% jQuery:
var a = 1;
var b = 2;
$("<script>c=+("+a+")+ +("+b+")</script>").appendTo($(document));
Теперь c
сохранит ваш результат, и вы использовали только jQuery! Как вы можете видеть, jQuery действительно здорово, потому что он делает всевозможные вещи
Это также хорошо работает, потому что неважно, являются ли строки a
или b
!
var a = 1;
var b = 2;
$("<script id='test'>$('<textarea id=\\'abc\\'>'+("+a+")+ +("+b+")+'</textarea>').appendTo($('body'))</script>").appendTo('body');
var c = $("#abc").val();
Этот ответ был выполнен с помощью 100% jQuery, потому что jQuery является потрясающим, но используйте его только потому, что он может не работать.
Вы также можете использовать революционный арифметический плагин jQuery, который решил мир во всем мире в 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
Это выполняет вычитание двух переменных, заданных из входных переменных, выбранных на основе идентификатора.
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/