function 的apply()方法
时间: 2023-12-05 12:03:56 浏览: 21
在 JavaScript 中,函数是一等公民,这意味着函数可以像其他数据类型一样被传递和操作。Function.prototype.apply() 方法是 JavaScript 中的内置函数之一,它允许您在函数内部调用另一个函数,并将给定的 this 值和参数数组传递给该函数。
语法如下:
```
function.apply(thisArg, [argsArray])
```
其中:
- thisArg:要在其中调用函数的对象。在函数内部,可以使用 this 关键字引用该对象。
- argsArray:一个数组,其中包含要传递给函数的参数。
例如,假设我们有以下两个函数:
```
function greet(name, age) {
console.log(`Hello, my name is ${name} and I'm ${age} years old.`);
}
function introduce() {
console.log(`Let me introduce myself.`);
}
```
我们可以使用 apply() 方法在 introduce() 函数内部调用 greet() 函数,并将 this 值设置为一个对象,参数设置为一个数组:
```
introduce.apply({ name: 'Alice', age: 30 }); // Let me introduce myself.
// Hello, my name is Alice and I'm 30 years old.
```
在这个例子中,我们将 this 值设置为 `{ name: 'Alice', age: 30 }`,并将参数数组设置为 `['Alice', 30]`。当我们在 introduce() 函数内部调用 greet() 函数时,greet() 函数使用 this 关键字引用传递的对象,并打印出一条问候语。