首页
会员中心
到顶部
到尾部
JavaScript教程

JavaScript 对象原型

时间:2020/11/2 14:52:42  作者:  来源:  查看:0  评论:0
内容摘要:JavaScript 对象原型JS 对象构造器JS ECMAScript 5所有 JavaScript 对象都从原型继承属性和方法。在前一章里,我们学到了如何使用对象构造器:实例function Person(first, last, age, eyecolor) { th...

JavaScript 对象原型

所有 JavaScript 对象都从原型继承属性和方法。

在前一章里,我们学到了如何使用对象构造器

实例

function Person(first, last, age, eyecolor) {    this.firstName = first;    this.lastName = last;    this.age = age;    this.eyeColor = eyecolor;}var myFather = new Person("Bill", "Gates", 62, "blue");var myMother = new Person("Steve", "Jobs", 56, "green");

亲自试一试

我们已经认识到,您无法为已有的对象构造器添加新属性:

实例

Person.nationality = "English";

亲自试一试

如需向构造器添加一个新属性,则必须把它添加到构造器函数:

实例

function Person(first, last, age, eyecolor) {    this.firstName = first;    this.lastName = last;    this.age = age;    this.eyeColor = eyecolor;    this.nationality = "English";}

亲自试一试

原型继承

所有 JavaScript 对象都从原型继承属性和方法。

日期对象继承自 Date.prototype。数组对象继承自 Array.prototype。Person 对象继承自 Person.prototype。

Object.prototype 位于原型继承链的顶端:

日期对象、数组对象和 Person 对象都继承自 Object.prototype。

向对象添加属性和方法

有时,您希望向所有给定类型的已有对象添加新属性(或方法)。

有时,您希望向对象构造器添加新属性(或方法)。

使用 prototype 属性

JavaScript prototype 属性允许您为对象构造器添加新属性:

实例

function Person(first, last, age, eyecolor) {    this.firstName = first;    this.lastName = last;    this.age = age;    this.eyeColor = eyecolor;}Person.prototype.nationality = "English";

亲自试一试

JavaScript prototype 属性也允许您为对象构造器添加新方法:

实例

function Person(first, last, age, eyecolor) {    this.firstName = first;    this.lastName = last;    this.age = age;    this.eyeColor = eyecolor;}Person.prototype.name = function() {    return this.firstName + " " + this.lastName;};

亲自试一试

请只修改您自己的原型。绝不要修改标准 JavaScript 对象的原型。



相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号