如何使用之前定义的函数制作While-Loop?(普通Java脚本)

时间:2017-04-08 19:42:27

标签: javascript

我即将创建一个简单的游戏,但游戏循环尚未开始。如果我调用end_game函数并继续打印'a',while循环不会中断。我真的无法弄清楚它有什么问题。谢谢你们。

var game_status = true;

var end_game = function end_game(){
                    game_status = false;
                    return game_status;
                    };

var game_loop = function game_loop(game_status, end_game){
                  while(game_status == true){
                        console.log('a');
                        end_game();
                  }
              };

function call_gameloop(){
    game_loop(game_status,end_game);
};
<div id = 'play_field' onclick='call_gameloop();'></div>

1 个答案:

答案 0 :(得分:1)

game_status函数中的

game_loop()变量是函数的局部变量,与全局声明的变量不同。

end_game()函数修改全局变量,因此不会破坏上述循环。

为了使工作顺利进行,请不要将game_status参数传递给game_loop()函数,就像您没有传递给end_game()函数一样。