【问题标题】:JavaScript: How to define an "object"JavaScript:如何定义“对象”
【发布时间】:2011-05-09 03:19:21
【问题描述】:

我正在使用非常方便的 JSLint 工具来确保我的 javascript 是严格的。

我有以下代码被 JSLint 标记:

var my_obj = new Object();   // <-- JSLint states "Use the object literal notation {}."
var numKP = 1;

while (query.indexOf('&') > -1) {
    keypairs[numKP] = query.substring(0,query.indexOf('&'));
    query = query.substring((query.indexOf('&')) + 1);
    numKP++;
}

keypairs[numKP] = query;

for (i in keypairs) {
    my_obj[keypairs] = keypairs[i];
}

我应该如何修复上面的代码以使其 JavaScript “严格”(通过 JSLint 验证器)?

【问题讨论】:

    标签: javascript


    【解决方案1】:

    正如消息所说,实际上:

    var my_obj = {};
    

    这定义了一个没有显式属性的对象,这与您所做的相同,但从 JSLint 的角度来看更好。 (我相信这是因为它没有显式调用构造函数,但老实说我真的不知道编辑:根据ECMAScript spec 11.1.5 节,它完全等同于@987654323 @. 我想这很酷,因为它更短且更不容易出现拼写错误。)

    【讨论】:

      【解决方案2】:

      只是做

       var my_obj = {};
      

      {} 是用于创建对象字面量的 javascript 表示法。

      【讨论】:

        猜你喜欢
        • 2016-09-11
        • 2014-10-05
        • 2023-04-11
        • 1970-01-01
        • 1970-01-01
        • 2013-02-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多