JavaScript函数声明错误

时间:2016-09-06 07:58:17

标签: javascript function

我刚开始学习JS并编写一个小游戏进行培训。但是在执行这个对象时我遇到了一个奇怪的错误:

mainState = {
    name : "GAME_STATE",

    Setup: function( context, settings ) {
    }


    HandleKeyDown: function( event ) {
    }

    Update: function( settings ){

    }

    Draw: function( context, settings ){

    }
} 

所有FireBug都说:

SyntaxError: missing } after property list
HandleKeyDown: function( event ) {

感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

您需要在属性(键及其值)之间添加逗号,否则它不是有效的JavaScript对象,因此Firebug抛出此编译错误

  在属性列表

之后

SyntaxError:missing}

这是正确的方法

mainState = {
  name: "GAME_STATE",
  Setup: function(context, settings) {},
  HandleKeyDown: function(event) {},
  Update: function(settings) {},
  Draw: function(context, settings) {} // here no comma
}

答案 1 :(得分:1)

在javascript中,您可以轻松创建javascript对象,但首先您必须知道符号:

var jsObj1 = {}; //A very basic initiation.
var jsObj2 = {
    a: "a",
    b: "b",
    c: "c"
};

在这里,正如您所看到的,JS对象的每个字段之间都有逗号。对于您的情况,您已经为每个JS对象的字段创建了函数'价值但忘记了逗号:

var mainState = {

    name : "GAME_STATE",

    Setup: function( context, settings ) {

    },

    HandleKeyDown: function( event ) {

    },

    Update: function( settings ) {

    },

    Draw: function( context, settings ) {

    }

};

所以这将毫无错误地发挥作用。

答案 2 :(得分:0)

您需要添加逗号:

mainState = {
    name : "GAME_STATE",

    Setup: function( context, settings ) {
    },


    HandleKeyDown: function( event ) {
    },

    Update: function( settings ){

    },

    Draw: function( context, settings ){

    }
}