fn.call(obj,arg1,arg2,arg3)
fn.apply(obj,[arg1,arg2,arg3])
fn.bind(obj,20,'中国‘)()
call、apply、bind可以将某个函数的this指向修改为传⼊这三个⽅法中的第⼀个参数,其中call、apply会⽴即执⾏,bind返回的是⼀个函数,需调⽤后执⾏。
第⼆个参数是传⼊要执⾏的⽅法中的参数,call、bind是独⽴传递参数,apply是以数组传递参数的
使⽤场景:
1、需要改变某个函数的this指向时
2、当参数较少时可以使⽤call,参数较多可以使⽤apply以数组的⽅式传递
3、当需要重复调⽤时,可以使⽤bind新定义⼀个⽅法