JavaScript 进阶(七)call, apply, bind
写在前面,像我们的日常开发中,可能会遇到一些 call,apply 和 bind 这样的方法。看着这些方法,把 this 绑定来绑定过去。可能就会有点懵圈儿,那今天呢就让我带大家来了解一下这三个方法吧。废话不多说,let's go!
call, apply, bind
call
call()
方法使用一个指定的this
值和单独给出的一个或多个参数来调用一个函数。
注意: 该方法的语法和作用与 [
apply()
] 方法类似,只有一个区别,就是call()
方法接受的是一个参数列表,而apply()
方法接受的是一个包含多个参数的数组。
复制代码
apply
apply()
方法调用一个具有给定this
值的函数,以及以一个数组(或类数组对象)的形式提供参数。
注意: call()方法的作用和 apply() 方法类似,区别就是
call()
方法接受的是参数列表,而apply()
方法接受的是一个参数数组。
复制代码
null
或undefined
时会自动替换为指向全局对象
bind
bind()
方法创建一个新的函数,在bind()
被调用时,这个新函数的this
被指定为bind()
的第一个参数,而其余参数将作为新函数的参数,供调用时使用。
复制代码
END~~~
评论