zoukankan      html  css  js  c++  java
  • JavaScript面向对象编程入门

    来源极客网

     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();

     例子3

    //字面形式的Javascript面向对象
    var person = {
        name:"James",
        age:30,
        eat:function(){
            alert("能吃")
        }
    }
    //给person添加一个属性
    
    function Person(){
    
    }
    //使用Person的原型链添加属性和方法
    Person.prototye={
        name="James",
        age:30,
        eat:function(){
            alert("我在吃");
        }
    }
    //使用new 使用这个对象
    var p = new Person();//new仅仅是一个关键词,和Java,C#中的new作用完全不同
  • 相关阅读:
    处理缺失值
    数据清理
    数据聚合
    ajax动态生成table
    MangeEmpHashMap
    Arraylist的雇员管理操作
    jsp获取一个对象和list对象
    Controller比较两个对象discs、outlets中的元素是否相等。相同则相应的checkbox为checked
    限制input text输入的类型(数字,字母,小数点)
    联合主键的映射运用
  • 原文地址:https://www.cnblogs.com/zhuji/p/6539548.html
Copyright © 2011-2022 走看看