关于原型

---恢复内容开始---

原型是一个对象,其他对象可以通过它实现属性继承。

每个函数都有一个属性叫做prototype

这个prototype的属性值是一个对象(属性的集合,再次强调!),默认的只有一个叫做constructor的属性,指向这个函数本身。

原型方式

该方式利用了对象的 prototype 属性,可以把它看成创建新对象所依赖的原型。

这里,首先用空构造函数来设置类名。

然后所有的属性和方法都被直接赋予 prototype 属性。

我们重写了前面的例子,代码如下:

function Car() {

}

Car.prototype.color = "blue";

Car.prototype.doors = 4;

Car.prototype.mpg = 25;

Car.prototype.showColor = function() {

alert(this.color);

};

var oCar1 = new Car();

var oCar2 = new Car();

__proto__ , constructor , prototype

hasOwnProperty()

hasOwnProperty()函数用于指示一个对象自身(不包括原型链)是否具有指定名称的属性。

如果有,返回true,否则返回false。

语法:object.hasOwnProperty( propertyName ) hasOwnProperty()函数的返回值为Boolean类型。

如果对象object具有名称为propertyName的属性,则返回true,否则返回false。

此方法不会检查对象的原型链中是否存在该属性,该属性只有是对象本身的一个成员才会返回true。

---恢复内容结束---

原文地址:https://www.cnblogs.com/w-xiaojia/p/7231155.html