如果对象是原型并且是从文字创建的,则访问对象字段的Javascript性能

时间:2012-09-24 13:26:06

标签: javascript performance prototype object-literal

我可以使用原型创建对象,并在构造函数中设置字段,或者我可以使用JSON创建对象。我希望原型版本的速度和字面速度一样快,或者速度更快,但是它在chrome和ff上的速度要慢一些,而在Opera上似乎是相等的。

http://jsperf.com/object-literal-vs-object-prototype-field-access-time

有人可以解释一下吗?

1 个答案:

答案 0 :(得分:3)

AFAIK原型访问基本上只是2次正常访问(除了对原型的访问进行了高度优化)。写this.test与写

基本相同
if(this.hasOwnProperty('test')) { return test; }
else { return this.constructor.prototype['test']; }

尽管如此,我对这一点并不十分肯定。