執行上下文詳解

2021-10-06 06:06:47 字數 674 閱讀 5880

執行上下文可以理解為當前**的執行環境,它會形成乙個作用域

1.單執行緒

2.同步執行,只有棧頂的上下文處於執行中,其他上下文需要等待

3.全域性上下文只有唯一的乙個,它在瀏覽器關閉時出棧

4.函式的執行上下文的個數沒有限制

5.每次某個函式被呼叫,就會建立乙個新的執行上下文,即使是呼叫的自身函式,也是如此。

一.建立階段

在這個階段中,執行上下文會分別建立變數物件,建立作用域鏈,以及確定this指向。

二.**執行階段

建立完成之後,就會開始執行**,會完成變數賦值,函式引用,以及執行其他**。

let/const

let/const宣告的變數,仍然會提前被收集到變數物件中,但和var不同的是,let/const定義的變數,不會在這個時候給他賦值undefined

執行上下文詳解

當執行 js 時,會產生三種執行上下文 每個執行上下文中都有三個重要的屬性 var a 10 function foo i foo 對於上述 執行棧中有兩個上下文 全域性上下文和函式foo上下文。stack globalcontext,foocontext 對於全域性上下文來說,vo 大概是這樣的 ...

執行上下文

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

this執行上下文

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