JavaScript (+) sign concatenates instead of giving sum?

The + sign concatenates because you haven’t used parseInt(). The values from the textbox are string values, therefore you need to use parseInt() to parse the value.

After selecting the value from text box, you need to parse that value. Following is the code −


 Live Demo

<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initialscale=1.0">
<link rel="stylesheet" href="//">
<script src=""></script>
<script src=""></script>
<input type="num" class="num1" placeholder=""><br>
SecondNumber:<input type="num" class="num2" placeholder=""><br><br>
<input type="button" onclick="sumOfTwoNumbers()" value="Addition">
<p class="output"></p>
   function sumOfTwoNumbers(){
      var num1 = document.querySelector(".num1").value;
      var num2 = document.querySelector(".num2").value;
      var addition = parseInt(num1)+parseInt(num2);
      document.querySelector(".output").innerHTML = "The addition of two
      numbers= " + addition;

To run the above program, save the file name “anyName.html(index.html)” and right click on the file. Select the option “Open with Live Server” in VS Code editor.


This will produce the following output −

Now, enter the value in both the textboxes and click the “Addition” button to get the sum −

Updated on: 03-Sep-2020

5K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started