Aptana抱怨JavaScript分号

问题描述 投票:2回答:3

为什么带有验证器(Mozilla或JSlint)的Aptana会抱怨这段代码:

var collectionOfValues = {
    key0 : value0;
    key1 : value1;
    key2 : value2;
};

它适用于,但不适用于;

即使是Good Parts的代码也不会验证:

var myObject = {
    value: 0;
    increment: function (inc) {
        this.value += typeof inc === 'number' ? inc : 1;
    }
};
javascript validation aptana
3个回答
8
投票

这是抱怨,因为这是一个语法错误。在对象文字中,您使用逗号分隔术语,而不是分号。

var collectionOfValues = {
    key0 : value0,
    key1 : value1,
    key2 : value2
};

您知道的每个JavaScript实现都会拒绝您的示例。

var myObject = {
    value: 0,
    increment: function (inc) {
        this.value += typeof inc === 'number' ? inc : 1;
    }
};

自大爆炸以来,情况基本如此。


2
投票

因为正确的语法会

var collectionOfValues = {
    key0 : value0,
    key1 : value1,
    key2 : value2,
};

对于一个js对象


0
投票

我知道这是一个迟到的答案,但实际上好的部分是正确的。 (提问者可能知道这一点,但对于其他读这个的人来说......);我的副本是2008年,这篇文章是2011年。它是用逗号打印的。

这是让我困惑的下一点... ;-)

© www.soinside.com 2019 - 2024. All rights reserved.