2016-10-12 13:53发布
请问下,什么时候使用这两个调用函数?这两个的区别,以及分别什么情况下使用?
在使用 call() 方法的情况下,callSum() 必须明确地传入每一个参数。结果与使用 apply() 没有什么不同。至于是使用 apply() 还是 call(),完全取决于你采取哪种给函数传递参数的方式最方便。如果你打算直接传入 arguments 对象,或者包含函数中先接收到的也是一个数组,那么使用 apply() 肯定更方便;否则,选择 call() 可能更合适。(在不给函数传递参数的情况下,使用哪个方法都无所谓。)事实上,传递参数并非 apply() 和 call() 真正的用武之地;它们真正强大的地方是能够扩充函数赖以运行的作用域。下面来看一个例子。
call()
callSum()
apply()
arguments
最多设置5个标签!
在使用
call()
方法的情况下,callSum()
必须明确地传入每一个参数。结果与使用apply()
没有什么不同。至于是使用apply()
还是call()
,完全取决于你采取哪种给函数传递参数的方式最方便。如果你打算直接传入arguments
对象,或者包含函数中先接收到的也是一个数组,那么使用apply()
肯定更方便;否则,选择call()
可能更合适。(在不给函数传递参数的情况下,使用哪个方法都无所谓。)事实上,传递参数并非
apply()
和call()
真正的用武之地;它们真正强大的地方是能够扩充函数赖以运行的作用域。下面来看一个例子。一周热门 更多>