美文网首页
call、apply、bind区别

call、apply、bind区别

作者: Ordinary_zz | 来源:发表于2020-09-14 18:20 被阅读0次

共同作用:为了改变this的指向

function.call(thisArg,arg1,arg2, ...)

function.apply(thisArg, [argsArray])

function.bind(thisArg[,arg1[,arg2[, ...]]])

call 、bind 、 apply 这三个函数的第一个参数都是 this 的指向对象,主要差别是第二个参数:

call 的参数是直接放进去的,第二第三第 n 个参数全都用逗号分隔,直接放到后面 
obj.myFun.call(curObj,'麻辣烫', ... ,'煎饼果子' )
apply 的所有参数都必须放在一个数组里面传进去 
obj.myFun.apply(curObj,['麻辣烫', ..., '煎饼果子' ])
bind 的参数与call一致都是直接放进去的,不同其他两个是,返回值是一个新的函数,所以需要去调用一次才会去执行
obj.myFun.bind(curObj,['麻辣烫', ..., '煎饼果子' ])()

三者的参数类型不限定

相关文章

  • 理解JS中的 call, apply, bind方法

    call, apply, bind 方法的目的和区别 我们常说,call(), apply(),bind()方法的...

  • this_原型链_继承

    this相关问题 apply、call 、bind的作用以及区别 call、apply和bind方法的用法以及区别...

  • this&原型链&继承

    this 1. apply、call 、bind有什么作用,什么区别? apply、call 、bind 都是用来...

  • this_原型链_继承

    this 相关 1. apply、call 、bind有什么作用,什么区别 apply、call、bind可以改变...

  • 关于 this_原型链_继承 相关问题总结

    关于this 1- apply、call 、bind的作用和区别 apply、call 、bind都有改变thi...

  • this_原型链_继承

    问题1: apply、call 、bind有什么作用,什么区别? apply和call call apply,调用...

  • this 原型链 继承

    this 相关问题 1.apply、call 、bind有什么作用,什么区别 apply、call 、bind这三...

  • call(),apply()和bind()

    call、apply和bind函数存在的区别:bind返回对应函数, 便于稍后调用; apply, call则是立...

  • this 相关问题

    问题1: apply、call 、bind有什么作用,什么区别 apply call bind 问题2: 以下代码...

  • js继承

    问题1: apply、call 、bind有什么作用,什么区别 apply/call/bind 问题2: 以下代码...

网友评论

      本文标题:call、apply、bind区别

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