代码改变世界

构造函数

2015-11-08 22:52  we星星  阅读(248)  评论(0编辑  收藏  举报

对象字面量。

 var clock={
  hour:12,
  minute:10,
  second:10,
  showTime:function(){
   alert(this.hour+":"+this.minute+":"+this.second);
  }
 }
 clock.showTime();//调用

创建Object实例

 var clock = new Object();
 clock.hour=12;
 clock.minute=10;
 clock.showHour=function(){alert(clock.hour);};

 clock.showHour();//调用

由此可见 属性是可以动态添加,修改的

 

构造函数模式

 function clock(hour,minute,second){
  this.hour = hour;
  this.minute = minute;
  this.second = second;
  this.showTime = function(){
   alert(this.hour+":"+this.minute+":"+this.second);
  }
 }
 var newClock =new  clock(12,12,12); 
 alert(newClock.hour);

 注意:这个new关键字是必须,如果不加,clock就不会当成构造函数调用,而只是一个普通的函数。同时,还会意外地给他的外部作用域即window添加属性,因为此时构造函数内部的this已经映射到了外部作用域了。所以为了安全起见,可以这样创建