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 这个数组来遍历所有的参数。