canMoveLeft()为什么要加for循环?还有返回return值后还会继续循环吗?
function moveLeft(){
if( canMoveLeft(board) ) //canMoveLeft()用于判断是否可以执行左移操作
//canMoveLeft()返回true,下面开始执行左移操作
//虽然已经确定可以移动了,但是我们还需进一步确定该移动到哪个位置
{
for( var i = 0;i < 4;i++)
for( var j = 1;j < 4;j++)
}
return false;
}
function canMoveLeft(board){
//元素是否可以左移需要满足如下情况的一种
//1.左右元素大小相等
//2.左边的格子为空,不含元素
for ( var i = 0 ; i < 4 ; i++ )
for ( var j = 1 ; j < 4 ; j++)
if (board[i][j] != 0)
if (board[i][j-1] == 0 || board[i][j-1] == board[i][j])
return true;
return false;
}代码如上。moveLeft里的if( canMoveLeft(board) )语句调用canMoveLeft(board)函数后,假如canMoveLeft(board)中的for循环第一次就返回了true,那之后的循环还会继续吗?还有moveLeft和canMoveLeft中为什么都要for循环?一直没想明白。。这不是重复了吗?