深入浅出call apply bind

时间:2022-12-31 23:59:07

1.call apply   

       作用:   改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向   (函数存在「定义时上下文」和「运行时上下文」以及「上下文是可以改变的」的概念).

       区别:   1、call 需要把参数按顺序传递进去,而 apply 则是把参数放在数组里。

                              eg: function aa(ag1,ag2){};   aa.call(this,ag1,ag2)   aa.apply(this,[ag1,ag2])

                     2、当你的参数是明确知道数量时用 call 。而不确定的时候用 apply,然后把参数 push 进数组传递进去。当参数数量不确定时,函数内部也可以通过 arguments 这个数组来遍历所有的参数。



   具体查看