无法在javascript中获取两个数字的总和
Cant get sum of two number in javascrit
在我的代码中可以添加数字数组并在文本字段中显示结果,但是在我添加新数字并尝试获取数组中的数字总和后它会连接(例如 5+5=10,但它 returns 5+5=55)。
这是我第一次接触这个问题,我该如何处理?
请参阅代码:
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="text" id="n1"/><br/><br/>
<input type="text" id="n2"/><br/><br/>
<button id="buttoni">Get Aray Sum</button>
<button id="buttona">Add Array</button>
<p id="pText"></p>
</body>
<script>
let btnGet = document.getElementById("buttoni");
let result = document.getElementById("n2");
let numbers = [];
document.getElementById("buttona").onclick = function pushData()
{
// get value from the input text
var inputText = document.getElementById('n1').value;
// append data to the array
numbers.push(inputText);
var pval = "";
for(i = 0; i < numbers.length; i++)
{
pval = pval + numbers[i] + "<br/>";
}
// display array data
document.getElementById('pText').innerHTML = pval;
};
let numo = numbers;
btnGet.addEventListener('click', () => {
result.value = numo.reduce((total, current) => total += current);
});
</script>
</html>
先将其转换为整数。 parseInt(value);
Javascript 认为它是一个字符串,所以它像任何其他字符串一样添加它(“5” + “5” 将是 55 而 5+5 或 parseInt(“5”) + parseInt(" 5") 将是 10)
将第 24 行替换为 var inputText = parseInt(document.getElementById('n1').value);
或将第 27 行替换为 numbers.push(parseInt(inputText));
更改下行
numbers.push(inputText);
和
numbers.push(parseInt(inputText));
在我的代码中可以添加数字数组并在文本字段中显示结果,但是在我添加新数字并尝试获取数组中的数字总和后它会连接(例如 5+5=10,但它 returns 5+5=55)。 这是我第一次接触这个问题,我该如何处理? 请参阅代码:
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="text" id="n1"/><br/><br/>
<input type="text" id="n2"/><br/><br/>
<button id="buttoni">Get Aray Sum</button>
<button id="buttona">Add Array</button>
<p id="pText"></p>
</body>
<script>
let btnGet = document.getElementById("buttoni");
let result = document.getElementById("n2");
let numbers = [];
document.getElementById("buttona").onclick = function pushData()
{
// get value from the input text
var inputText = document.getElementById('n1').value;
// append data to the array
numbers.push(inputText);
var pval = "";
for(i = 0; i < numbers.length; i++)
{
pval = pval + numbers[i] + "<br/>";
}
// display array data
document.getElementById('pText').innerHTML = pval;
};
let numo = numbers;
btnGet.addEventListener('click', () => {
result.value = numo.reduce((total, current) => total += current);
});
</script>
</html>
先将其转换为整数。 parseInt(value);
Javascript 认为它是一个字符串,所以它像任何其他字符串一样添加它(“5” + “5” 将是 55 而 5+5 或 parseInt(“5”) + parseInt(" 5") 将是 10)
将第 24 行替换为 var inputText = parseInt(document.getElementById('n1').value);
或将第 27 行替换为 numbers.push(parseInt(inputText));
更改下行
numbers.push(inputText);
和
numbers.push(parseInt(inputText));