var key = 'a';
map[key] = 'value';
map['a'] = 'value';
在Java中,这是在编译过程中自动优化的。我想知道是否有任何JS编译器自己进行这种优化。
最佳答案
This answer与此处相关;性能没有区别,因为一个是另一个的别名。通过测试可以看到它们具有相同的性能:
var objectTest = {
a: 1,
}
console.time('dot');
for (var i = 0; i < 100000000; i++) {
objectTest.a = objectTest.a + 1;
}
console.timeEnd('dot');
objectTest = {
a: 1,
}
console.time('bracket');
for (var i = 0; i < 100000000; i++) {
objectTest['a'] = objectTest['a'] + 1;
}
console.timeEnd('bracket');
关于javascript - 在Javascript中对Hashmap的以下两次访问是否有任何区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52625986/