美文网首页前端成长之路读书
函数的四种调用方式

函数的四种调用方式

作者: 米若晨风 | 来源:发表于2019-03-23 13:27 被阅读1次

调用函数有4种方式:

  1. obj.func(); //直接用对象调用,或直接方法调用
  2. func.call(obj,args);//参数列出,call可以改变函数运行的作用域
  3. func.apply(obj,[m,n......]);//参数数组,apply同样可以改变函数运行的作用域,与call区别在于,第二个参数用数组的方式传入
  4. func.bind() //bind()返回的是一个函数,需要bind()参数放绑定的对象,后面再加括号才执行
    var name="wang",age=17;
    var obj={
        name:"zhang",
      objAge:this.age,
      myfun:function(){console.log(this.name+"年龄"+this.age)}
    }; 
    var db={name:"dema",age:99} ; 
    obj.myfun();                               //zhang年龄undefined
    obj.myfun.call(db);                //dema年龄99
    obj.myfun.apply(db);      //dema年龄99
    obj.myfun.bind(db);       // ƒ (){console.log(this.name+"年龄"+this.age)}
    console.log(obj.objAge);    //17,此时this指向window

相关文章

网友评论

    本文标题:函数的四种调用方式

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