javascript面向对象设计

javascript面向对象设计

        通过一个简单的例子来阐述。
<script>
function Lecture(name,teacher){
   this.name=name;
   this.teacher=teacher;
}

Lecture.prototype.display=function(){
   return this.teacher+"is teaching "+this.name;
}

function Schedule(lectures){
   this.lectures=lectures;
}

Schedule.prototype.display=function(){
   var str="";
   for(var i=0;i<this.lectures.length;i++)
      str+=this.lectures[i].display()+"!  ";
   return str;
}

var myLecture=new Lecture("Gym","Hunk Wang");
var myLecture2=new Lecture("Tom","Ducklyl");

var myArray=new Array(myLecture,myLecture2);
var mySchedule=new Schedule(myArray);

alert(mySchedule.display());
</script>
运行结果为:Hunk Wang is teaching Gym! Ducklyl is teaching Tom!
下面分析一下流程,以上建立两个类Lecture和Schedule,
首先初始化Lecture类,调用Lecture类构造函数,接着把Lecture类的对象,作为参数传入Schedule类,Schedule对象初始化,从而实现上述结果。
不难发现,这种方式和java是类似的。只过javascript要真正实现面象对象,还需要很多过程实现。
期待后续。

你可能感兴趣的:(javascript面向对象设计)