大鹏一日同风起,扶摇直上九万里。这篇文章主要讲述call() 和 apply() 的区别?相关的知识,希望能为你提供帮助。
相同点:两个方法产生的作用是完全一样的,都用来改变当前函数调用的对象。
不同点:调用的参数不同,比较精辟的总结:
foo.call(this,arg1,arg2,arg3) == foo.apply(this, arguments)==this.foo(arg1, arg2, arg3)
1.call的使用
call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。
文章图片
【call() 和 apply() 的区别()】
2.apply()
apply与call的功能几乎一样,第一个参数意义都一样,只是第二个参数有点不同apply传入的是一个参数数组,也就是将多个参数组合成为一个数组传入,call从第二个参数开始,依次传值给调用函数的参数
文章图片
推荐阅读
- 微信App支付(JAVA端)
- Android库项目中的资源ID冲突
- django startapp报 maximum recursion depth exceeded
- ApplicationListener用法
- android studio 2018.3.23
- android studio 2018.3.22
- Could not find com.android.support:appcompat-v7:23.1.1
- RN app打包
- Failed to resolve: com.android.support:appcompat-v7:27.0.1问题解决