使用JavaScript进行面向对象开发 互动版

jQuery提供的继承方法

继承其实就是即拥有自己定义的成员,也拥有父类型定义的成员,并且可以重写父类型的成员。

jQuery提供了对原始对象的简单继承方法:$.extend,它会使用后面的对象与前面的对象的成员加起来,成生新的对象。

    //定义一个工人
    var worker = {
        name : "",
        age : 0,
        isWorking : false,
        startWork : function(){
            //some code here
        }
    };

    //定义一个工头,工头本身也是工人,但他有一个额外的属性,用于记录他所管理的员工列表,并且可以指挥一名工人开工
    var leader = $.extend(worker,{
        workers : [],
        callStart : function(worker){
            //指挥一名工人开工
        }
    });

    //此时的leader除了拥有name,age,isWorking,startWork这四项属性之外,还拥有workers和callStart成员。

*$.extend$还可以重写对象上的成员

    var worker = {
        position : "worker" //职位
    };
    var leader = $.extend(worker,{
        position : "leader"
    });

    document.write(leader.position);        //leader
手动尝试一下$.extend