Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重置游戏和赢家问题_Javascript_Angularjs_Reset - Fatal编程技术网

Javascript 重置游戏和赢家问题

Javascript 重置游戏和赢家问题,javascript,angularjs,reset,Javascript,Angularjs,Reset,我正在建立一个简单的井字游戏,我需要一些帮助与我的重置按钮和赢家功能 在提供的代码片段的末尾,我试图实现一个重置按钮,但我不确定如何让它工作。我为winner函数做else语句的方式是这样的,如果没有更多的移动,我似乎无法让它说:没有更多的移动,每次你点击一个方块时它都会说 我如何实现这一点 重置功能: self.resetbtn = function() { self.boxes.forEach(function(box, index) { self.boxes[ind

我正在建立一个简单的井字游戏,我需要一些帮助与我的重置按钮和赢家功能

在提供的代码片段的末尾,我试图实现一个重置按钮,但我不确定如何让它工作。我为winner函数做else语句的方式是这样的,如果没有更多的移动,我似乎无法让它说:没有更多的移动,每次你点击一个方块时它都会说

我如何实现这一点

重置功能:

self.resetbtn = function() {
    self.boxes.forEach(function(box, index) {
        self.boxes[index].value = '';
        self.boxes[index].square = index;
    })
};
除此之外,不再移动:

var hasMoves = false;
self.boxes.forEach(function(box, index) {
    if(box.square != self.playerOne && box.square != self.playerTwo) {
        hasMoves = true;
    }
}

if(! hasMoves) {
    alert  ("No more moves!");
}

此外,如果在代码中不使用硬编码的值X和O,而是使用它们的变量self.playerne和self.playerTwo,则会更好。这将使更改X和O值变得更容易,尽管在Tic Tac Toe游戏中您不会这样做。

为每个值输入resetbtn函数只会隐藏值。这不是完全摆脱他们。。。有没有办法在玩家点击重置按钮后刷新页面?您可以执行页面刷新:location.reload;,但这不是正确的解决方案。你说它没有完全摆脱它们是什么意思?这些值存储在哪里?默认设置是什么?应该重置什么?@DustinBaker,你能回答我的问题吗?这些值仍然存储在控制台中。。。我最终把事情弄明白了,并开始工作。我现在不在我的电脑前,但稍后会发布我的代码,告诉你我到底做了什么。谢谢你的帮助!!!:o
var hasMoves = false;
self.boxes.forEach(function(box, index) {
    if(box.square != self.playerOne && box.square != self.playerTwo) {
        hasMoves = true;
    }
}

if(! hasMoves) {
    alert  ("No more moves!");
}