总结
call(): 第一个参数是要改变的this的指向,第二个参数是调用这个函数时所传的参数
fn.call(obj,1,2)
apply():第一个参数是要改变的this的指向,第二个参数是一个数组
fn.apply(obj,[1,2])
bind():只有一个参数,为改变this的指向,返回一个新函数需要重新调用
let f = fn.bind(obj,1,2)
f()
常用于:全局函数调用call、对象方法调用call、基于call的继承、多重继承、call的引用,防抖
使用场景