Addition is not working in JavaScript
If the numbers that you are trying to add are 10 and 12, if they resulting sum is supposed to be 22, then you should probably do it as
+10 + +12
And the result might be a string like 1012 if one or both of the numbers is a string.
+
has two uses. One is addition, the other however is string concatenation. If one or both of your variables is a string, then +
will concatenate them.
You will need to use parseInt
or parseFloat
to turn a string into a number.
In Javascript the + operator can either perform addition or concatenation depending on the type of its operands. When numbers are used with + it uses addition, but when strings are used with + it concatenates (joins the strings) instead
One or both of the variables is a string instead of a number. This makes the +
do string concatenation.
'2' + 2 === '22'; // true
2 + 2 === 4; // true
The other arithmetic operators / * -
will perform a toNumber
conversion on the string(s).
'3' * '5' === 15; // true
A quick way to convert a string to a number is to use the unary +
operator.
+'2' + 2 === 4; // true
...or with your variables:
+x + +y