码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript面向对象编程入门

时间:2017-03-12 22:54:45      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:传参   创建   java   ret   turn   编程   父类   bsp   表示   

来源极客网

 1 function Person() {
 2     var _this = {} //创建一个空的对象,接着我们利用这个"空的对象"承载Person的属性和方法
 3     _this.sayHello = function(){
 4         alert("PHello");
 5     }
 6     return _this; 
 7 }
 8 
 9 function Teacher_1() {
10     var _this = Person();//注意这里的语法小括号
11     return _this;
12 }
13 
14 //演示覆写父类中的方法语法
15 function Teacher_2() {
16     var _this = Person();
17     _this.sayHello = function () {
18         alert("Thello");
19     }
20     return _this;
21 }
22 //演示子类怎样调用父类的方法
23 function Teacher() {
24     var _this = Person();
25     var surperSay = _this.sayHello;     //1.通过"赋值"的代码思想进行处理
26     _this.sayHello = function () {
27         surperSay.call(_this) //2.通过call()方法进行强行调用
28         alert("Thello");
29     }
30     return _this;
31 }
32 
33 //调用我们创建对象Teacher
34  var t = Teacher();
35 t.sayHello();//调用到我们在Person中声明的sayHello

自己随便定义html运行一下上面的代码,感受一下

 1 //演示用一个函数将一个function包裹起来,然后执行它
 2 //第5行增加传参的情况怎样处理
 3 (function(){
 4     var n = "ime";
 5     function Person(name) {
 6         var _this = {} //创建一个空的对象,接着我们利用这个"空的对象"承载Person的属性和方法
 7         _this._name = name;
 8         _this.sayHello = function(){
 9             alert("PHello" + this._name + ":"+ n);
10         }
11         return _this; 
12     }
13     window.Person = Person; //表示将函数Person"挂"给全家变量,
14 }());//大括号右边的一对小括号,是必须有的,表示自运行
15 //演示了
16 function Teacher(name) {
17     var _this = Person(name);
18     var superSay = _this.sayHello;
19     _this.sayHello = function () {
20         superSay.call(_this);
21         alert("Thello" + _this._name);
22     }
23     return _this;
24 }
25 var t = Teacher("iwen");
26 t.sayHello();

 

JavaScript面向对象编程入门

标签:传参   创建   java   ret   turn   编程   父类   bsp   表示   

原文地址:http://www.cnblogs.com/zhuji/p/6539548.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!