Javascript原型运算符的性能:节省内存,但是否更快?

14 浏览
0 Comments

Javascript原型运算符的性能:节省内存,但是否更快?

我在这里(Douglas Crockford)读到,使用原型运算符将方法添加到Javascript类中也能节省内存

然后我在John Resig的这篇文章中读到,“使用一堆原型属性来实例化一个函数非常、非常快”,但他是在谈论使用标准方式使用原型,还是在谈论他文章中的特定示例?

例如,创建这个对象:

function Class1()
{
   this.showMsg = function(string) { alert(string); }
}
var c = new Class1();
c.showMsg();

和创建这个对象相比,速度更慢吗?

function Class1() {}
Class1.prototype.showMsg = function(string) { alert(string); }
var c = new Class1();
c.showMsg();

附:

我知道原型用于创建继承和单例对象等等。但这个问题与这些主题无关。


编辑:对于那些对JS对象和JS静态对象的性能比较也感兴趣的人,可以阅读下面的这个答案静态对象明显更快,显然只能在你不需要多个对象实例时使用。

0