我是新手。我正在为一堂课做练习,并且主题是我试图让用户在出现的提示窗口中输入3个数字。这样可以正常工作,但是我试图在提示结束后获得输入的最高数字。正如我在代码中所提到的,可以将任何东西添加到Math.max中以使其工作,它非常接近工作,但并不完全存在。我感谢任何帮助。
<!DOCTYPE html>
<html lang="en">
<head>
<title>
Number Input with Prompt
</title>
<script type = "text/javascript">
<!--
var total;
var inputNumber;
var value;
var highestNumber;
var finalMax = Math.max. //<-----Can anything be added here to get the maximum number entered in the prompt window that appears?
total = 0;
inputNumber = 1;
while ( inputNumber <= 3 ){
highestNumber = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
while(isNaN(value = parseInt( highestNumber ))){
highestNumber = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
}
total = total + value;
inputNumber = inputNumber + 1;
}
document.writeln(
"<h1>The highest number is " + finalMax + "</h1>" );
// -->
</script>
</head>
<body>
</body>
</html>
答案 0 :(得分:1)
此方法将响应与最新的最高值进行比较。
logic =“如果值&gt; highestNumber,highestNumber = value”
<script type = "text/javascript">
<!--
var total;
var inputNumber;
var value;
var highestNumber;
//var finalMax = Math.max. //<-----Can anything be added here to get the maximum number entered in the prompt window that appears?
total = 0;
inputNumber = 1;
while ( inputNumber <= 3 ){
value = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
while(isNaN(parseInt( value ))){
value = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
}
if (highestNumber == undefined || highestNumber < value) {
highestNumber = value;
}
total = total + value;
inputNumber = inputNumber + 1;
}
document.writeln(
"<h1>The highest number is " + highestNumber + "</h1>" );
// -->
</script>
答案 1 :(得分:1)
更好的方法就是这样
var nums = new Array();
for(var i=0; i<3; i++){
nums[i] = window.prompt( "Enter number " + (i+1) + " of 3:" , "" );
}
document.writeln("<h1>The highest number is " + Math.max.apply(null, nums) + "</h1>" );
答案 2 :(得分:0)
此方法记录所有答案并在最后运行比较,从而使用Math.max()
logic =“highestNumber = Math.max(第一,第二,第三)”
<script type = "text/javascript">
<!--
var total;
var inputNumber;
var value;
var highestNumber = [];
//var finalMax = Math.max. //<-----Can anything be added here to get the maximum number entered in the prompt window that appears?
total = 0;
inputNumber = 1;
while ( inputNumber <= 3 ){
value = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
while(isNaN(parseInt( value ))){
value = window.prompt( "Enter number " + inputNumber + " of 3:" , "" );
}
highestNumber[inputNumber] = value;
total = total + value;
inputNumber = inputNumber + 1;
}
finalMax = Math.max(highestNumber[1], highestNumber[2], highestNumber[3]);
document.writeln(
"<h1>The highest number is " + finalMax + "</h1>" );
// -->
</script>
答案 3 :(得分:0)
如果您需要或想要使用Math.max来查找最大值,则应将每个有效条目添加到数字数组并调用Math.max.apply(null, numbers);
以下小提琴显示了这一点:http://jsfiddle.net/T2Gxm/