一个是实例自己的,一个是原型共享的,优劣什么的看需求的场景,例子: function Foo() { this.prop = 123; } Foo.prototype.prop2 = 555; var f1 = new Foo() f2 = new Foo(); console.log(f1.prop, f2.prop); // 123 123 f1.prop = 444; console.log(f1.prop, f2.prop); // 444 123 console.log(f1.prop2, f2.prop2); // 555 555 f1.__proto__.prop2 = 666; console.log(f1.prop2, f2.prop2); // 666 666
一个是实例自己的,一个是原型共享的,优劣什么的看需求的场景,例子: