JS作用鏈和作用域

2021-09-25 20:58:18 字數 387 閱讀 6515

js作用域也就是js識別變數的範圍,作用域鏈也就是js查詢變數的順序

先說作用域,js作用域主要包括全域性作用域、區域性作用域和es6的塊級作用域

全域性作用域:也就是定義在window下的變數範圍,在任何地方都可以訪問,

區域性作用域:是只在函式內部定義的變數範圍

塊級作用域:簡單來說用let和const在任意的**塊中定義的變數都認為是塊級作用域中的變數,例如在for迴圈中用let定義的變數,例如在for迴圈中用let定義的變數,在if語句中用let定義的變數等等

住:盡量不要使用全域性變數,因為容易導致全域性的汙染,命名衝突,對bug查詢不利

而所謂的作用域就是由最內部的最勇於往外最外部,查詢變數的過程,形成的鏈條就是作用域鏈

JS作用域和作用域鏈

什麼是js作用域?js作用域也就是js識別變數的範圍 1 全域性作用域 2 區域性作用域 3 e6的塊級作用域 全域性作用域 也就是定義在window下的變數範圍,在任何地方都可以訪問 區域性作用域 是只在函式內部定義的變數範圍 塊級作用域 簡單來說就是用let和const在任意的 塊中定義的變數都...

作用域和作用域鏈

全域性作用域 全域性的變數執行環境 函式作用域 函式內部的變數執行環境 每個函式都有自己的執行環境,當執行流進入乙個函式時,函式的環境就會被推入乙個環境棧中。函式執行之後,棧將環境彈出,把控制權返回給之前的執行環境。全域性作用域只要頁面不解除安裝,就一直存在,不釋放。函式每次在呼叫時,都會形成乙個作...

作用域和作用域鏈

var a 10 function f1 x,y f1 console.log b 此時b輸出5,因為b 5為隱式的全域性變數 在函式外面使用var 宣告的變數都是全域性變數,作用範圍是程式執行的地方.全域性作用域 函式除外 函式的形參是區域性變數 在函式內部,不使用var 定義的變數,叫隱式全域性...