写条件但JavaScript无法识别

时间:2014-04-24 17:03:41

标签: javascript

此代码用于检查按钮是否被按下,然后它将检查游戏中瓷砖的位置,但它返回它看到的是分配而不是条件。如果有人知道什么是错的或想要给我一个解决方案。那太棒了。

document.addEventListener('keydown', function (event) {
        //Use === to compare something to 0
        if (event.keyCode == 65) {
            if (tile1.x === 0) {
                if (tile1.y = 237) {
                    correct();
                } else {
                    gameOver();
                }
            } else if (tile2.x === 0) {
                if (tile2.y = 237) {
                    correct();
                } else {
                    gameOver();
                }
            } else if (tile3.x === 0) {
                if (tile3.y = 237) {
                    correct();
                } else {
                    gameOver();
                }
            }
        }
    });

2 个答案:

答案 0 :(得分:1)

将tile1.y,tile2.y和tile3.y与237进行比较,应该使用operator ==而不是代码中的single =。

答案 1 :(得分:0)

您的代码存在一些问题:

这样的事情
 if (tile3.y = 237)

应该看起来像

 if (tile3.y == 237)

Plain“=”是赋值运算符。您可能正在寻找比较运算符(http://www.w3schools.com/js/js_comparisons.asp)。赋值运算符将赋值 tile3.y(或其他)值。见这里:

http://www.quirksmode.org/blog/archives/2008/01/using_the_assig.html

另外,如果可以,请避免使用原始数字(如“65”)。