美文网首页
JS高级-函数的四种调用模式

JS高级-函数的四种调用模式

作者: 五四青年_4e7d | 来源:发表于2020-02-10 15:34 被阅读0次

    1.函数执行模式:

    function  add(a,b){
        console.log(this)
        return a + b
    }
    // this = window
    add()
    

    2.对象方法的调用模式:

    function Cat() {
        this.show = function(){
            console.log(this)
        }
    }
    var c = new Cat()
    //对象调用自己的方法
    c.show()
    

    3.构造器的调用模式:

    function Cat() {
        this.show = function(){
            console.log(this)
        }
    }
    var c = new Cat()
    //和第二种方法的执行结果相同但是,模式不同
    

    4.call() apply() bind()调用模式:

    function info(name,age){
        return console.log('你好'+ name + '我是调用的'+ this.name + age + '岁')
    }
    var whh = {
        name:'娃哈哈'
    }
    console.log(whh)
    //使用call可以把this绑定上,function的this等于什么,可以在外部指定;
    //第一项用于绑定函数里面的this
    //call和apply本质上是一样的不同的区别如下:(传参为数组)
    //bind 必须要用变量接收,调用变量()不马上执行
    info.call(whh,'李慷',111)
    info.apply(whh,['李慷',111])
    
    var yy = info.bind(whh)
    yy('kk',22)
    

    相关文章

      网友评论

          本文标题:JS高级-函数的四种调用模式

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