我正在按照以下关于如何制作太空入侵者游戏的教程 - http://www.html5rocks.com/en/tutorials/canvas/notearsgame/
但是,执行此代码并且不显示游戏时,会显示标题中的错误消息。无效标签表示返回函数中第二行开头的“y”是错误的罪魁祸首。
player.midpoint = function()
{
return
{
x: this.x + this.width/2,
y: this.y + this.height/2
};
};
然而,当我把这个代码拿出来时,游戏运行正常,只有当我按空间来解冻游戏时,因为它需要上面的功能来发射子弹。
答案 0 :(得分:4)
Automatic Semicolon Insertion打你。您的代码被解析为
player.midpoint = function() {
return;
{
x: this.x + this.width/2,
y: this.y + this.height/2
}
};
其中大括号构成一个块,而x
和y
是labels语句 - 而y:
之前的尾随逗号是语法错误。
您需要将返回的表达式放在与return
:
player.midpoint = function() {
return {
x: this.x + this.width/2,
y: this.y + this.height/2
};
};