執行上下文

2021-09-24 14:37:45 字數 566 閱讀 1756

1.**分類(位置)

*全域性**

*函式(區域性)**

2.全域性執行上下文

*在執行全域性**前將window確定為全域性執行上下文

*對全域性資料進行預處理

-var定義的全域性變數==>undefined,新增為window的屬性

-function宣告的全域性函式==>賦值(fun),新增為window的方法

-this==>賦值(window)

*開始執行全域性**

3.函式執行上下文

*在呼叫函式,準備執行函式體之前,建立對應的函式上下文物件(虛擬的,存在於棧中,當函式呼叫時建立,呼叫完畢釋放)

*對區域性資料進行預處理

-形參變數==>賦值(實參)==>新增為執行上下文的屬性

-arguments==>賦值(實參列表),新增為執行上下文的屬性

-var定義的區域性變數==>undefined,新增為執行上下文的屬性

-function宣告的函式==>賦值(fun),新增為執行上下文的方法

-this==>賦值(呼叫函式的物件)

this執行上下文

this的指向為 誰呼叫當前this所在的函式,this就指向誰。也就是說,當前呼叫函式的那個物件自身就是this,就是當前的執行上下文。被滑鼠事件,鍵盤事件等觸發的函式 叫做事件處理函式,事件處理函式的this指向事件源 觸發事件的節點 事件處理函式第乙個引數是事件物件 備註 有名函式的this指...

執行上下文

js原理 原型鏈 執行上下文 事件迴圈 預備知識 1 棧 stack 棧是類似於陣列的一種資料結構。2物件引用 user1指向使用者物件 user1持有使用者物件的引用 var user1 var user2 user1 user2.name 張三 console.log user1.name,us...

執行上下文

1.分類 位置 全域性 函式 區域性 2.全域性執行上下文 在執行全域性 前,將window確定為全域性執行上下文 對全域性資料進行預處理 var定義的全域性變數 undefined 新增為window的屬性 function宣告的全域性函式 賦值 fun 新增為window的方法 this 賦值 ...