【发布时间】:2015-10-21 04:02:53
【问题描述】:
我是 Js OOp 的新手。
我在某处读到原型在OOP 在JS 中使用
好的,这是一个例子
function Dog(name) {
this.name = name;
this.age = age;
this.bark = function() {
console.log("Woof");
}
}
现在我的问题是为什么我们不能像这样创建对象
Dog doberman = new Dog;
这会创建一个新的 Dog 对象。
但是通过原型我们可以做这样的事情
var doberman = Object.create(dog);
我读到功能可以分离,并且可以通过原型将它们添加到对象中。 请帮助我。我很困惑..
问题很简单 为什么对方法使用 Object.prototype?
【问题讨论】:
-
Prototype 允许您确保该类的任何对象将具有(至少最初)该属性(即变量、方法)。
-
JavaScript 没有输入,所以你不能使用
Dog doberman = new Dog(),但你肯定可以使用var doberman = new Dog() -
用 JavaScript 编程时可以按空格键。
-
注意原型还可以帮助分离对象的方法,这样就不会在每个实例中重新创建它们。
标签: javascript prototypal-inheritance