apply()调用方法
时间: 2023-10-13 08:06:44 浏览: 38
apply()是JavaScript中的一个函数方法,它用于调用一个函数,并将一个指定的对象设置为函数的this值,以及传递一个数组作为函数的参数。
apply()方法的语法如下:
```
function.apply(thisArg, [argsArray])
```
其中,thisArg为函数执行时所在的上下文对象,如果该参数为null或undefined,则this指向全局对象。argsArray为一个数组,它包含传递给函数的参数,如果不需要传递参数,则该参数可以省略。
下面是一个简单的例子,展示了如何使用apply()方法来调用一个函数:
```
function greet(name) {
console.log(`Hello, ${name}!`);
}
greet.apply(null, ['John']); // 输出:Hello, John!
```
在此例中,我们调用了greet()函数,并将其this指向了全局对象,将名字John作为参数传递给了该函数。由于apply()方法可以接受任意数量的参数,因此可以将多个参数传递给函数,如下所示:
```
function sum(a, b, c) {
return a + b + c;
}
let numbers = [1, 2, 3];
let result = sum.apply(null, numbers);
console.log(result); // 输出:6
```
在此例中,我们调用了sum()函数,并将其this指向了全局对象,将数组[1, 2, 3]作为参数传递给了该函数。由于apply()方法将数组中的每个元素都作为参数传递给了函数,因此实际上调用了sum(1, 2, 3)函数,并将其返回值6存储在result变量中。