javascript 函數的四種調用方式
javascript 函数有四种
调用方式,this指向函数执行时
的当前对象
。
1.作为一个函数调用。
function myFunction(a, b) {
return a * b;
}
myFunction(10, 2); // 20
注意:当函数没有被自身的对象调用时,this的值就会变成全局对象:window(浏览器窗口)。
2.函数作为方法调用。
var myObject = {
firstName:"John",
lastName: "Doe",
fullName: function () {
return this.firstName + " " + this.lastName;
}
}
myObject.fullName(); // John Doe
3.使用构造函数调用函数。
unction myFunction(arg1, arg2) {
this.firstName = arg1;
this.lastName = arg2;
}
// This creates a new object
var x = new myFunction("John","Doe");
x.firstName; // John
4.作为函数方法调用函数。
call()
和apply()
是预定义的函数方法。两个方法可用于调用函数,两个方法的第一个参数必须是对象本身
。
function myFunction(a, b) {
return a * b;
}
myFunction.call(this, 10, 2); // 20
function myFunction(a, b) {
return a * b;
}
myArray = [10,2];
myFunction.apply(this, myArray); //20
在 JavaScript 严格模式(strict mode)下, 在调用函数时第一个参数会成为 this 的值, 即使该参数不是一个对象。
在 JavaScript 非严格模式(non-strict mode)下, 如果第一个参数的值是 null 或 undefined, 它将使用全局对象替代。
點擊查看更多內容
6人點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦