call/apply/bind
相同:
都可用于替换函数中不正确的this
区别
call/apply:
什么是:调用一个函数,并临时替换其中的this为指定对象
何时使用:在调用函数时,需要临时替换this为指定对象时
如何:
要调用的函数.call(对象,参数值,….)
-
调用函数
-
替换函数中的this为指定"对象"
-
传入参数
如果参数值列表是一个数组:
函数.apply(对象, 数组)
bind
什么是: 创建一个函数的副本,并永久替换其中的this为指定的对象
何时: 如果函数,暂时不调用,而是仅创建副本,并永久替换this时