我对JavaScript更“新”,并且想知道在函数中放置if
时是否需要添加任何内容。这是我的代码。我希望能够使用一个函数来调用另一个警告页面的函数。
function Function() {
var var1 = Math.floor((Math.random() * 10) + 1);
document.getElementById("paragraph1").innerHTML = var1;
Functions();
}
function Functions() {
if (var1 == 1) {
Question1();
}
}
function Question1() {
alert("works");
}
先谢谢!
答案 0 :(得分:1)
您的问题不是if
,而是范围可变。
使用var
声明的变量是函数的本地变量,不能从其他函数访问它们。您应该将值作为参数传递给另一个函数。
function Function() {
var var1 = Math.floor((Math.random() * 10) + 1);
document.getElementById("paragraph1").innerHTML = var1;
Functions(var1);
}
function Functions(var2) {
if (var2 == 1) {
Question1();
}
}
function Question1() {
alert("works");
}
答案 1 :(得分:0)
关于变量范围的快速教训:变量仅存在于
中定义的范围内因此,在Functions
的定义中,变量var2
将是未定义的。
两种解决方案
Functions
时,通过Functions(var2)
等参数传递var2,并捕获函数体内的值var2
,因此两个函数都可以看到该值。虽然,这通常被认为是不好的做法