
Function.prototype.apply 和 Function.prototype.call 是允许您使用特定 this 值和参数调用函数的方法。两者之间的主要区别在于 apply 允许您传入参数数组,而 call 则要求您将参数一一列出。
Function.prototype.apply
>Function .prototype.apply 是一种方法,允许您使用特定的 this 值和参数数组调用函数。
语法
使用 apply 的语法是 -
func.apply(thisArg, argsArray)
这里 thisArg 是将在函数内用作 this 的值。 argsArray 是将传递给函数的参数数组。
示例
以下是使用 apply 调用函数的示例 -
Examples
输出
上面的代码将打印下面的输出。
立即学习“Java免费学习笔记(深入)”;
Hello, John!
如您所见,我们为 thisArg 传递了 null,因为我们不想设置 this 值。我们为 argsArray 传递了一个数组,其中包含参数“John”。结果是以“John”作为名称参数调用 sayHello 函数。
Function.prototype.call
Function.prototype.call 是一个允许您调用的方法具有特定 this 值和参数列表的函数。
语法
使用 call 的语法是
func.call(thisArg, arg1, arg2, ...)
这里 thisArg 是将在函数内用作 this 的值。 arg1、arg2、 ...是将传递给函数的参数。
示例
这里是使用调用的示例 调用函数 -
Examples
输出
上面的代码将打印下面的输出。
立即学习“Java免费学习笔记(深入)”;
Hello, John!
如您所见,我们为 thisArg 传递了 null,因为我们不想设置 this 值。我们将“John”作为唯一的参数。结果是以“John”作为名称参数调用 sayHello 函数。
MALL的中文含义是购物中心,是区别于专卖店和百货公司的一个流行的商业模式,MALL里面是各个独立商家,自由自主的定价,各自管理自己的供销渠道和客户关系。电子商务的MALL模式其实就是对B2C业务模式做了多主体的扩展和延伸。目前具有代表性的电子商务MALL模式就是淘宝商城。比如淘宝电器城,他们的模式更像是做房地产的,阿里巴巴有着繁华的互联网商业物业,只是开了一个名字叫淘宝电器城的大市场而已,没有任
Function.prototype.apply 和 Function.prototype.call 之间的差异
下表重点介绍了Function.prototype.apply 和 Function.prototype.call 之间的主要区别 -
| 比较基础 | Function.prototype.apply | Function.prototype.call | |
|---|---|---|---|
| 定义 | 此方法允许我们使用特定的 this 值和参数数组调用函数。 | 此方法允许我们使用特定的 this 值和参数列表调用函数。 | |
| 参数 | 我们传递一个参数数组。 | 我们传递一个参数列表。 | |
| 速度 | 因为它没有创建新函数,所以它比调用更快。 | em> | 因为每次调用都会创建一个新函数,所以比apply慢。 |
| 用法 |
|
|
结论
在本教程中,我们讨论了apply和call之间的区别> 方法。两者之间的主要区别在于他们如何接受论点。这些方法有不同的用法。您可以查看上表中的使用情况行。










