Javascript原型运算符的性能:节省内存,但是否更快?
- 论坛
- Javascript原型运算符的性能:节省内存,但是否更快?
14 浏览
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静态对象的性能比较也感兴趣的人,可以阅读下面的这个答案。静态对象明显更快,显然只能在你不需要多个对象实例时使用。