1

我正在学习 Backbone.js,因为我觉得它对我的项目会派上用场。

我正在通过不同的教程运行,我找不到像这样的类的区别和最佳声明:

Person = Backbone.Model.extend({
    defaults: {
        name: 'Andy',
        age: 25,
        occupation: 'Whatever...'
    }
});

以这种方式初始化一个类是否更好:

var me = new Person({name: 'Andy'});

或者

var me = new Person({'name': 'Andy'});

为什么要使用单引号来设置变量?这需要更多时间,但什么是最好的?什么是对的,为什么?我不确定是否只是 JSON 问题或者是否是主干问题,因为实际上这是初始化和使用大括号的问题。如果我使用.set(var, value)并且变量没有引号,主干会在查找变量时抛出错误。

我尝试查看 Backbone.js 网站和 JSON 网站,但找不到答案。

4

1 回答 1

2

如果我们是迂腐的,那么有效的 JSON 需要所有键的单引号。例如,JSLint 将拒绝没有引号的 JSON。

但是在 Javascript 中它们不是必需的,并且大多数人都将它们排除在外(正如您所指出的,它更简洁)。也就是说,除非您在名称中有保留字符,-例如 等。例如,{ name: 'Andy' }这很好,但{ first-name: 'Andy' }会导致解析器停止。

于 2013-07-12T00:19:40.033 回答