JavaScript 对象原型
Kai na kai na JavaScript kai a kai kula da kai na jinkirin na jinkirin.
在前一章里,我们学到了如何使用对象构造器:
实例
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"; }
Kula na jinkirin na jinkirin
Kai na kai na JavaScript kai a kai kula da kai na jinkirin na jinkirin.
Ceeniyar na tsawon wuri sun zaune a kai na Date.prototype. Ceeniyar na gina sun zaune a kai na Array.prototype. Ceeniyar na mutum sun zaune a kai na Person.prototype.
Object.prototype yana tsawon wuri na tsawon kula na jinkirin na jinkirin.
Ceeniyar na tsawon wuri, ceeniyar na gina da ceeniyar na mutum sun zaune a kai na Object.prototype.
Raba ceeniyar da kai a gina a kama kai a gina a kada koyar da a gina.
Barki, ana kai kawarce wanda haka a kama kai a gina a kada ceeniyar, a haka a kama kai a gina a kada koyar da a haka.
有时,您希望向对象构造器添加新属性(或方法)。
使用 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 对象的原型。