I write a js code to determine which number is bigger but the result is not perfect! when I input two number with same digit numbers, the result is correct. For example when I input “2” and “3” the result is “3” but when I input “2” in first field and “55” in the second field, the result is “2”.
Thank you in advance.
sorry for my weak English.
JavaScript
x
13
13
1
2
function biggerOne() {
3
var x = document.getElementById("firstNumber").value;
4
var y = document.getElementById("secondNumber").value;
5
6
if (x>y){ document.getElementById("Result").innerHTML=x;
7
8
} else {
9
10
document.getElementById("Result").innerHTML=y;
11
}
12
13
}
JavaScript
1
15
15
1
<!DOCTYPE html>
2
<head>
3
<script src="show bigger.js"></script>
4
</head>
5
<body>
6
<p>insert first number</p>
7
<input type="number" id="firstNumber" ر>
8
<p> insert second number</p>
9
<input type="number" id="secondNumber">
10
<button onclick="biggerOne()"> result </button>
11
<!---it is so important to insert value in the below code line-->
12
<p id="Result" value=""></p>
13
14
15
</body>
Advertisement
Answer
Document.getElementById() returns “String” type value and comparison between two string will act differently. Better convert those string types to integer.
JavaScript
1
12
12
1
var x = document.getElementById("firstNumber").value;
2
var y = document.getElementById("secondNumber").value;
3
4
if (parseInt(x) > parseInt(y))
5
{
6
document.getElementById("Result").innerHTML=x;
7
}
8
else
9
{
10
document.getElementById("Result").innerHTML=y;
11
}
12