使用原型而不是在对象本身上声明属性有什么好处吗?

use*_*219 9 javascript ecma262

原型用于声明一类对象的属性和方法.使用原型的一个优点是它节省了内存,因为类的所有实例都指向原型的属性和方法,这样可以节省内存并有效地允许属性被类的所有实例视为静态.

Prototype用于通过原型链接继承.

我的问题很简单.为什么在你可以做的时候根本就使用原型:

function car() {
    this.engine = "v8";
}
function mustang() {
    // nm, no good way to inherit without using prototypes
}
Run Code Online (Sandbox Code Playgroud)

是对的吗?所以原型的主要目的有三个:

  1. 保存记忆
  2. 提供静态属性
  3. 是引用类型从超类继承的唯一方法

小智 0

原型制作的意义远不止于此。您还可以在运行时使用方法和属性扩展类和对象的现有实例。

这应该以一种非常容易理解的方式解释它:http ://javascript.info/tutorial/inheritance