我在做一个jquery扫雷,我目前正在研究揭示功能,当你点击与0
相邻的地雷块。预期的结果是遍历所有8个相邻块揭示的那些块,如果它们还“0
”的块,它反复该块:Javascript递归不起作用
function reveal(block) {
block.removeClass('hide');
var thex = getXY(block)[0];
var they = getXY(block)[1];
if (blockNumber(block) == '0') {
alert('test');
--they;
--thex;
var nearmines = 0;
for (mody=0;mody<3;mody++){
for (modx=0;modx<3;modx++){
var newx = thex + modx;
var newy = they + mody;
reveal(bl(newx,newy));
}
}
}
}
目前的第一个块检查后该功能正在停止每次函数迭代。看起来好像该通话正在打破for loops
。
也许你已在申报揭示函数内部的么和镆铘变量。我不知道如果你这样使用它会发生什么事情。这是一个全局变量吗? – duedl0r
如果我们知道函数bl(x,y)和blockNumber(no)是什么,肯定会有所帮助。我只能假设getXY返回[x,y]数组(而不是使用block.x&block.y ...?) –