0

我将这个对象设为文字,但我不明白 . 之后的数组的右括号定位是什么active。为什么我收到缺少括号的错误?

    var players = {
            player1 : {
                active : true,
                [
                    {
                        row : 1,
                        square : 1
                    },{
                        row : 2,
                        square : 1
                    },{
                        row : 3,
                        square : 1
                    }
                ]
            }
        };
4

3 回答 3

4

属性的值active可以是布尔值true或数组。不可能两者兼而有之。

您需要将其更改为:

active : [ ... ]

或者

active : true,
somethingElse : [ ... ]

或其他一些有效的数据结构。

于 2013-01-12T12:54:55.560 回答
3

首先,这不是JSON,而是JavaScript 对象初始化器(有时称为“对象文字”)。

问题出[在这里:

active: true,
[

在该值之前您需要一个键。基本形式是key: value,其中键是属性的名称(在 JavaScript 中可以是标识符、数字或字符串;在 JSON 中它必须是字符串,并且用双引号而不是单引号)和值是,嗯,价值。:-)

于 2013-01-12T12:55:23.927 回答
0

active 设置为 2 个值,true并且您的数组。要测试您的 JSON,请使用http://jsonlint.com/

于 2013-01-12T12:55:25.903 回答