我是Javascript新手,我试图编写一个程序,它将使用一个变量来调用函数,我将变量var X;
定义为全局变量,并在startGame()
函数上初始化它。问题是如果我运行startGame()
一次,然后调用X();
作为一个函数工作正常,但说我把它放在一个循环,它运行在第一次迭代,当它返回时,它说Uncaught TypeError: X is not a function
。刚接触Javascript我很困惑,我需要关于如何使用变量作为函数的帮助。返回函数Javascript
var X,
i=0,
lastmove = 100; //Randomly initialize function
function A(){
console.log('A');
}
function B(){
console.log('B');
}
function C(){
console.log('C');
}
function pickFunc(){
var temp = Math.floor(Math.random() * 3) + 1;
if(temp==lastmove)
temp = pickFunc()
else
lastStr = temp;
if(temp == 1)
return A();
else if(temp == 2)
return B();
else
return C();
}
function startGame(){
X = pickFunc();
for(i; i<10; i++)
X()
}
'返回A'等...因为'返回A()'返回调用'A' –
的结果,我只是说,它跑了一次就好的是,下一行表示'undefined' –
'为(i; i <10; i ++)'...'对于(var i = 0; i <10; i ++)'更合理 - 除了它会调用X()10次 –