JavaScript提示不会出现

Wil*_*sen 0 html javascript

我试图在javascript中制作一个简单的数学练习程序.在提示警报中给出不同的值,并将答案与用户输入进行比较.这是代码:

<html>
<head>
<title>Calculations</title>

<script language = "javascript">

generate();

function generate() {
{   
var calc = Math.floor(math.random() * 3 + 1);


if (calc == 1){
    calcSort == "+"
}else if(calc == 2){
    calcSort == "*";
} else if (calc == 3){
    calcSort == "/";
}

var num1 = Math.floor(Math.random() * 10 + 1);
var num2 = Math.floor(Math.random() * 10 + 1);

var answer;

if (calc == 1){
    answer = num1 + num2;
} else if (calc == 2){
    answer = num1 * num2;
} else if (calc == 3){
    answer = num1 / num2;
}

var userAnswer = prompt("What is " + num1 + calcSort + num2 + "?");

if (userAnswer == answer){
    alert("correct");
} else {
    alert("fail");
}


}

</script>

</head>
</html>
Run Code Online (Sandbox Code Playgroud)

提示没有出现,有什么不对?

Ale*_*x W 5

{在函数声明的开头有一个额外的generate(),也math没有定义,因为您需要使用Math(区分大小写)来使用实用程序函数.

  • 此外,您尝试使用等于运算符(`==`)而不是赋值运算符(`=`)来分配`calcSort`,并且您在全局范围(坏)中定义`calcSort`.这是一个有效的jsFiddle:http://jsfiddle.net/695BK/1/ (2认同)