美文网首页
函数继承

函数继承

作者: 姓高名旭升 | 来源:发表于2018-12-05 11:39 被阅读0次
      //父类
        function Fclass(name,age) {
            this.name = name;
            this.age = age;
        }
        //放在原型上所有新的实例可以共有这个函数
        Fclass.prototype.showName = function () {
            alert(this.name);
        };
        Fclass.prototype.showAge = function () {
            alert(this.age);
        };
        //子类
        function Sclass(name,age,job) {
            //如果js想要实现继承的话,就要调用父类call方法,把this传进去
            //属性的继承
            //  Fclass.apply(this,[name,age]);
            Fclass.call(this,name,age);
            this.job = job
        }
        //方法的继承
        Sclass.prototype = new Fclass();
        Sclass.prototype.showJob = function () {
            alert(this.job);
        };
        var chile = new Sclass('Jack',18,'老司机');
        chile.showName();
    
    
    如果js想要实现继承的话,就要调用父类call方法,把this传进去

    call和apply

     //call和apply
        //二者都可以改变当前的this,区别在于apply方法要将参数放入数组中在传参
        function aa(a,b) {
            alert('我的this是' + this + ',我的a是' + a + ',我的b是' + b);
        }
        aa.call('abc',2,3);
        aa.apply('abc',[2,3]);
    
    
    二者都可以改变当前的this,区别在于apply方法要将参数放入数组中在传参

    相关文章

      网友评论

          本文标题:函数继承

          本文链接:https://www.haomeiwen.com/subject/vjuicqtx.html