三个数的最大值 DOM 操作
max Value of Three Numbers DOM Manipulation
这是我的项目,returns 3 个数字的最大值。我想要做的是在我拥有的三个输入字段中输入 3 个数字,当我单击“计算”按钮时,我希望在 h1 之后显示这三个数字中最大的一个。我将输入传递给数字,然后创建一个包含这三个数字的数组,然后遍历该数组,将每个元素与第一个元素进行比较。但它不起作用。我真的找不到我的代码中的错误。有人可以帮忙吗?
这里是 html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Max Value Of Three Numbers</title>
</head>
<body>
<h1>The biggest number is: <span id="maxDisplay">0</span></h1>
<input type="number" name="" id="num1">
<input type="number" name="" id="num2">
<input type="number" name="" id="num3">
<button id="calculateMax">Calculate</button>
<script type="text/javascript" src="maxValue.js"></script>
</body>
</html>
和JavaScript:
var maxDisplay = document.querySelector("#maxDisplay");
var number1 = document.getElementById("num1");
var num1 = Number(number1.value);
var number2 = document.getElementById("num2");
var num2 = Number(number2.value);
var number3 = document.getElementById("num3");
var num3 = Number(number3.value);
var arr = [num1, num2, num3];
var calculateMax = document.getElementById("calculateMax");
var maxNumber = 0;
calculateMax.addEventListener("click", function(){
var maxNumber = arr[0];
for (var i = 1; i < arr.length; i++)
{
if(arr[i] > maxNumber)
{
maxNumber = arr[i];
}
}
maxDisplay.textContent = maxNumber;
});
这是因为一旦到达 HTML 文件中的脚本标记(脚本已加载),您就会获取输入字段的值,因此这些值当时为空。像这样移动部分代码。
var maxDisplay = document.querySelector("#maxDisplay");
var calculateMax = document.getElementById("calculateMax");
var maxNumber = 0;
var number1 = document.getElementById("num1");
var number2 = document.getElementById("num2");
var number3 = document.getElementById("num3");
calculateMax.addEventListener("click", function(){
var num1 = Number(number1.value);
var num2 = Number(number2.value);
var num3 = Number(number3.value);
var arr = [num1, num2, num3];
var maxNumber = arr[0];
for (var i = 1; i < arr.length; i++) {
if(arr[i] > maxNumber)
maxNumber = arr[i];
}
maxDisplay.textContent = maxNumber;
});
这样,您将在单击按钮时获得这些值。附带说明一下,您无需像这样手动输入 for 循环就可以获得数组的最大值。
maxDisplay.textContent = Math.max.apply(null, arr);
var res = document.getElementById('maxDisplay');
var num1 = document.getElementById('num1');
var num2 = document.getElementById('num2');
var num3 = document.getElementById('num3');
var btn = document.getElementById('calculateMax')
btn.addEventListener('click',function() {
var arr = [num1.value,num2.value,num3.value]
res.innerHTML = Math.max(...arr);
})
<html>
<head>
<meta charset="UTF-8">
<title>Max Value Of Three Numbers</title>
</head>
<body>
<h1>The biggest number is: <span id="maxDisplay">0</span></h1>
<input type="number" name="" id="num1">
<input type="number" name="" id="num2">
<input type="number" name="" id="num3">
<button id="calculateMax">Calculate</button>
</body>
</html>
这是我的项目,returns 3 个数字的最大值。我想要做的是在我拥有的三个输入字段中输入 3 个数字,当我单击“计算”按钮时,我希望在 h1 之后显示这三个数字中最大的一个。我将输入传递给数字,然后创建一个包含这三个数字的数组,然后遍历该数组,将每个元素与第一个元素进行比较。但它不起作用。我真的找不到我的代码中的错误。有人可以帮忙吗?
这里是 html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Max Value Of Three Numbers</title>
</head>
<body>
<h1>The biggest number is: <span id="maxDisplay">0</span></h1>
<input type="number" name="" id="num1">
<input type="number" name="" id="num2">
<input type="number" name="" id="num3">
<button id="calculateMax">Calculate</button>
<script type="text/javascript" src="maxValue.js"></script>
</body>
</html>
和JavaScript:
var maxDisplay = document.querySelector("#maxDisplay");
var number1 = document.getElementById("num1");
var num1 = Number(number1.value);
var number2 = document.getElementById("num2");
var num2 = Number(number2.value);
var number3 = document.getElementById("num3");
var num3 = Number(number3.value);
var arr = [num1, num2, num3];
var calculateMax = document.getElementById("calculateMax");
var maxNumber = 0;
calculateMax.addEventListener("click", function(){
var maxNumber = arr[0];
for (var i = 1; i < arr.length; i++)
{
if(arr[i] > maxNumber)
{
maxNumber = arr[i];
}
}
maxDisplay.textContent = maxNumber;
});
这是因为一旦到达 HTML 文件中的脚本标记(脚本已加载),您就会获取输入字段的值,因此这些值当时为空。像这样移动部分代码。
var maxDisplay = document.querySelector("#maxDisplay");
var calculateMax = document.getElementById("calculateMax");
var maxNumber = 0;
var number1 = document.getElementById("num1");
var number2 = document.getElementById("num2");
var number3 = document.getElementById("num3");
calculateMax.addEventListener("click", function(){
var num1 = Number(number1.value);
var num2 = Number(number2.value);
var num3 = Number(number3.value);
var arr = [num1, num2, num3];
var maxNumber = arr[0];
for (var i = 1; i < arr.length; i++) {
if(arr[i] > maxNumber)
maxNumber = arr[i];
}
maxDisplay.textContent = maxNumber;
});
这样,您将在单击按钮时获得这些值。附带说明一下,您无需像这样手动输入 for 循环就可以获得数组的最大值。
maxDisplay.textContent = Math.max.apply(null, arr);
var res = document.getElementById('maxDisplay');
var num1 = document.getElementById('num1');
var num2 = document.getElementById('num2');
var num3 = document.getElementById('num3');
var btn = document.getElementById('calculateMax')
btn.addEventListener('click',function() {
var arr = [num1.value,num2.value,num3.value]
res.innerHTML = Math.max(...arr);
})
<html>
<head>
<meta charset="UTF-8">
<title>Max Value Of Three Numbers</title>
</head>
<body>
<h1>The biggest number is: <span id="maxDisplay">0</span></h1>
<input type="number" name="" id="num1">
<input type="number" name="" id="num2">
<input type="number" name="" id="num3">
<button id="calculateMax">Calculate</button>
</body>
</html>