JavaScript Function call() 方法調用具有給定 this 值和單獨提供的參數的函數。
用法:
func.call(thisArg, arg1, ... argN)
在這裏,func
是一個函數。
參數:
call()
方法包含:
thisArg
- 為調用func
提供的this
的值。arg1, ... argN
(可選)- 函數的參數。
返回:
- 返回使用指定的
this
值和參數調用函數的結果。
通過使用call()
,我們可以使用屬於一個對象的函數來分配和調用另一個對象。
示例 1:使用 call()
function greet() {
const string = `My name is ${this.firstName} ${this.secondName}. I am ${this.age} years old.`;
console.log(string);
}
const human = {
firstName: "Judah",
lastName: "Parker",
age: 26,
};
greet.call(human); // My name is Judah undefined. I am 26 years old.
輸出
My name is Judah undefined. I am 26 years old.
示例 2:使用 call() 鏈接構造函數
function Animal(name, age) {
this.name = name;
this.age = age;
}
function Horse(name, age) {
Animal.call(this, name, age);
this.sound = "Neigh";
}
function Snake(name, age) {
Animal.call(this, name, age);
this.sound = "Hiss";
}
const snake1 = new Snake("Harry", 5);
console.log(snake1.name, snake1.age, snake1.sound);
const horse1 = new Horse("Arnold", 8);
console.log(horse1.name, horse1.age, horse1.sound);
輸出
Harry 5 Hiss Arnold 8 Neigh
注意:和...之間的不同call()
和apply()
就是它call()
接受一個參數列表,而apply()
接受單個參數數組。
相關用法
- JavaScript Function toString()用法及代碼示例
- JavaScript Function bind()用法及代碼示例
- JavaScript Function apply()用法及代碼示例
- JavaScript Function.displayName屬性用法及代碼示例
- JavaScript Function.name用法及代碼示例
- JavaScript Function.length用法及代碼示例
- JavaScript Function.length屬性用法及代碼示例
- JavaScript Object valueOf()用法及代碼示例
- JavaScript Uint8Array.of()用法及代碼示例
- JavaScript Number.isSafeInteger()用法及代碼示例
- JavaScript Math abs()用法及代碼示例
- JavaScript 正則 \xdd用法及代碼示例
- JavaScript BigInt.prototype.toString()用法及代碼示例
- JavaScript DataView.getInt16()用法及代碼示例
- JavaScript Symbol.keyFor()用法及代碼示例
- JavaScript handler.has()用法及代碼示例
- JavaScript JSON.stringify()用法及代碼示例
- JavaScript Symbol.split屬性用法及代碼示例
- JavaScript Date getYear()用法及代碼示例
- JavaScript Date.UTC()用法及代碼示例
注:本文由純淨天空篩選整理自 Javascript Function call()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。