JSONObject.item与JSONObject ['item']的相对处理速度是多少?

Eva*_*man 1 javascript json jshint

我正在努力加速使用以下许多结构的旧JavaScript代码:

var obj = {
            attr1: value,
            attr2: value2,
            ...
            attrN: valueN
          };

someFunction(obj['attr1']);
Run Code Online (Sandbox Code Playgroud)

JSHint给了我以下建议:

['attr1'] is better written in dot notation.
Run Code Online (Sandbox Code Playgroud)

因此,它更喜欢obj.attr1obj['attr1'].我理解这个警告的美学原因(在这里解释),但哪种符号更快?我认为前者会更有效率,因为后者涉及字符串文字的转换,但除了推测支持之外我别无其他.

我们非常感谢您提供的任何帮助.

mar*_*are 5

他们几乎是平均的.看到这两个jsperf示例:

http://jsperf.com/dot-operator-vs-array-notation
http://jsperf.com/dot-notation-vs-bracket-notation/2

它们都表明它们在1%之内相似,但是,它们都表明数组符号的速度要快得多.

编辑:

浏览新创建的jsperfs,我发现了这两个:

http://jsperf.com/mpaaa
http://jsperf.com/property-dot-versus-string

它们都显示几乎相同,实际上,经过多次测试后,它们显示出不同的结果(有时点更快,有时数组表示法)

这是一个平局

另一个编辑:

browsercope是错误的,但是,至少在我看来,它在其他浏览器中显示了一些非常不均匀的测试,我在其中一个显示出巨大差异的测试中测试了它,但却找到了与我已经发现的相似的结果