首頁 > web前端 > js教程 > JavaScript四個呼叫模式和this範例介紹_javascript技巧

JavaScript四個呼叫模式和this範例介紹_javascript技巧

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-05-16 17:05:48
原創
965 人瀏覽過

JavaScript呼叫時除了宣告時定義的形參外,每個函數接受兩個附加參數:this 和arguments,this在物件導向程式設計中非常重要,它取決於呼叫模式。

JavaScript有四種呼叫模式,方法呼叫模式,函數呼叫模式,建構器呼叫模式和apply呼叫模式。這些模式在初始化關鍵參數this上存在差異。

方法呼叫模式:當一個函數被儲存為物件的屬性時,我們稱它為一個方法,當一個方法被呼叫時,this被綁定到該物件上。如果呼叫表達式包含一個屬性取表達式(即一個.點表達式或[script]下標表達式),那麼它被當作一個方法呼叫。

複製程式碼 程式碼如下:

var myObject = {
value: 00; 🎜>increment: function(inc){
this.value = typeof inc === 'number' ? inc : 1;
}
};

myObject.increment();
document.writeln(myObject.value);//1

myObject.increment(2);
document.writeln(myObject.value);//2

方法可以使用this去存取對象,所以它能從對象取值或修改對象。 this的綁定發生在呼叫的時候。這個超級遲綁定使得函數可以對this高度重複使用。透過this可以取得他們所屬的上下文方法稱為公共方法。

函數呼叫模式:當一個函數並非一個物件的屬性時,那麼它被當做一個函數來呼叫var sum = add(3, 4);//sum值為7
當函數以此模式呼叫時,this被綁定到全域物件。

構造器呼叫模式:JavaScript是一門基於原型繼承的語言。這意味著可以直接從其他物件繼承屬性。該語言是無類別的。
如果在函數前面帶上new來調用,那麼將創建一個隱藏連接到該函數的prototype成員的新對象,同時this將會被綁定到那個新對像上。

Apply呼叫模式:因為JavaScript是一門函數式的物件導向程式語言,所以函數可以擁有方法。
apply方法讓哦我們建立一個參數數組並用其去呼叫函數。它也允許我們選擇this的值。
apply方法接受兩個參數,第一個將被綁定給this的值,第二個就是一個參數數組。
相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼實作 JavaScript點與圓的位置關係
來自於 1970-01-01 08:00:00
0
0
0
JavaScript鉤子函數是什麼?
來自於 1970-01-01 08:00:00
0
0
0
c++ 呼叫javascript
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板