既然有apply 为啥还要有 call?
今天在学习 apply 跟 call,看了网上几篇文章, 然后了解到apply跟call的区别是 接受参数的方式不太一样: func.call(this, arg1, arg2) func.apply(this, [arg1, arg2]) 其中 this 是你想指定的上下文,这第一个参数两者是一样的, 但是后面的参数,call 需要把其按顺序传递进去(arg1, arg2),而 apply 则是把参数放在数组里([arg1, arg2])。 我想问的是:
- 除了这个区别,这两个方法在应用场景上还有啥不一样的?
- 如果没有,既然有apply为啥还要用call,都放数组里面不就完了吗?或者是有其他方面的考虑。