首页 > 代码库 > JavaScript中的构造函数

JavaScript中的构造函数

function Accom(){};    //创建一个构造函数

//创建两个对象

var house=new Accom();

var apartment=new Accom();

通过构造函数创建的对象有一个属性constructor,这个属性指向创建该对象时所用的Javascript构造函数。

house.constructor===Accom;  或者   house instanceof Accom;     //true

JavaScript中的每个构造函数都有一个prototype的属性,这个属性指向一个对象。当用关键字new来创建一个对象实例时,实例中所包含的属性和方法都来自prototype所指向的这个对象


 为构造函数添加属性和方法

 

function Accom(){};
Accom.prototype={
        share: false,
        unlock: function(){}
};   //通过对象直接量为构造函数添加属性和方法
Accom.prototype.rooms=5;  //通过protype关键字添加属性
Accom.prototype.lock=function(){};  //通过protype关键字添加方法

在所有嵌套函数中都可以访问定义在其父函数中的变量


 

 组合使用this和prototype关键字创建构造函数(常用方法)

function Accom(floors,rooms){
     this.floors=floors||0;    //设置默认值0
     this.rooms=rooms||7;    //设置默认值7
}
Accom.prototype.lock=function(){
     this.islock=true;
};

var house=new Accom(2,5);   //实例化类

 

 

JavaScript中的构造函数