Muundo wa Kivunja cha Kikoa cha JavaScript
Tofauti ya ujumbe wa JavaScript zote zinaenea uwanja na mtu kutoka kwa asili.
Kwenye kitengo cha awali, tumekupenda kufikia jinsi ya kutumiaKuzengwa kwa ujumbe:
实例
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");
Tunaeafikisha, unavyokiHauweziKuingiza uwanja mpya kwenye kuzengwa kwa ujumbe walioonesha:
实例
Person.nationality = "English";
Kuwaonyesha uwanja mpya kwenye kuzengwa, lazima unwapate kwenye kuzengwa kwa mengineo wa kuzengwa:
实例
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; this.nationality = "English"; }
Mabiyiko wa asili
Tofauti ya ujumbe wa JavaScript zote zinaenea uwanja na mtu kutoka kwa asili.
Ujumbe wa tarehe unaenea kutoka kwa Date.prototype. Ujumbe wa orodha unaenea kutoka kwa Array.prototype. Ujumbe wa Person unaenea kutoka kwa Person.prototype.
Object.prototype inaenea kwenye kina kuu cha mabiyiko wa asili:
Ujumbe wa tarehe, ujumbe wa orodha na ujumbe wa Person wanaanza kutoka kwa Object.prototype.
Kuingiza uwanja na mtu kwenye ujumbe
Mwaka, unavyoki kuongeza uwanja mpya (au mtu) kwa ujumbe wa aina inayotumika kwa kila ujumbe.
有时,您希望向对象构造器添加新属性(或方法)。
使用 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 对象的原型。