在 JavaScript 中使用 call() 和 apply()
了解如何在 JavaScript 中使用 call() 和 apply() 函数以及它们的区别。
call() 和 apply() 是 JavaScript 提供的两个函数,用于执行一个非常特定的任务:调用一个函数并设置其 this
值。
查看我的 “this” 指南 以了解关于这个特定变量的所有细节。
函数可以使用 this
值进行许多不同的用例。问题在于它由环境给出,并且不能从外部改变,除非使用 call()
或 apply()
。
当使用这些方法时,您可以传入一个额外的对象,该对象将在调用的函数中用作 this
。
这两个函数执行相同的操作,但有一个区别。在 call()
中,您可以将函数参数作为逗号分隔的参数列表传递,可以使用任意数量的参数,而在 apply()
中,您传递一个包含参数的单个数组:
1 | const car = { |
请注意,当使用 箭头函数 时,this
不被绑定,因此此方法仅适用于常规函数。
tags: [“javascript”, “call”, “apply”, “this”, “function”]