摘要:如果內部函數定義了與外部函數重名的變量,則內部函數的變量將屏蔽外部函數的變量。局部作用域在任何塊級即內語句中定義變量或常量具有全局作用域。
1. 全局作用域
&& var:不在任何函數體內定義的var變量具有全局作用域(不同函數內部的同名變量互相獨立,互不影響:);
&& let和const: 不在任何塊級(即{}內)語句中定義的let變量或const常量具有全局作用域(不同塊級(即{}內)語句內部的同名變量互相獨立,互不影響:)。
// 1.如果一個var變量在函數體內部申明,則該變量的作用域為整個函數體,在函數體外不可引用該變量: function garden() { var x = 1; x = x + 1; } x = x + 2; // ReferenceError! 無法在函數體外引用變量x // 2.如果一個let變量或const常量在塊級(即{}內)語句內部申明,則該變量的作用域為整個塊級(即{}內)語句, // 在塊級(即{}內)語句外不可引用該變量: if (true) { var upperA = "LetterA"; } upperA + "B"; // ReferenceError: upperA is not defined // 3.由于JavaScript的函數可以嵌套,此時,內部函數可以訪問外部函數定義的變量,反過來則不行: function garden() { let x = 1; function showtime() { let y = x + 1; // showtime可以訪問garden的變量x! } let z = y + 1; // ReferenceError! garden不可以訪問showtime的變量y! }
提醒:JavaScript的函數在查找變量時從自身函數定義開始,從“內”向“外”查找。如果內部函數定義了與外部函數重名的變量,則內部函數的變量將“屏蔽”外部函數的變量。2. 局部作用域
在任何塊級(即{}內)語句中定義變量或常量具有全局作用域。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/100450.html
摘要:所以的作用域是靜態作用域,也叫詞法作用域。總結是一門基于詞法作用域靜態作用域的語言,會沿著作用域鏈像氣泡一樣向外部尋找變量聲明。又是函數作用域的語言,在中,使用和關鍵字后,能讓變量處于塊作用域中,而且不存在聲明提升。 本文共 1700 字,讀完只需 7 分鐘 概述 變量,編程語言中我們用來模擬現實概念的工具,比方說,變量可以表示對象,數組,數字,字符。既然是工具,那么就用工具的適用范圍...
摘要:至此作用域鏈創建完畢。好了,通過深入理解作用域鏈,我們能跟好的理解的運行機制和閉包的原理。 前言 理解javascript中的作用域和作用域鏈對我們理解js這們語言。這次想深入的聊下關于js執行的內部機制,主要討論下,作用域,作用域鏈,閉包的概念。為了更好的理解這些東西,我模擬了當一個函數執行時,js引擎做了哪些事情--那些我們看不見的動作。 關鍵詞: 執行環境 作用域 作用域鏈 變...
摘要:引言滿滿的干貨,面試必系列,參考大量資料,并集合自己的理解以及相關的面試題,對核心知識點中的作用域閉包上下文進行了梳理。如果在小區這個作用域找到了張老師,我就會在張老師的輔導下學鋼琴我張老師房間鋼琴構成了學琴的上下文環境。 showImg(https://segmentfault.com/img/bVbo4hv?w=1800&h=1000); 引言 滿滿的干貨,面試必bei系列,參考大...
摘要:是詞法作用域工作模式。使用可以將變量綁定在所在的任意作用域中通常是內部,也就是說為其聲明的變量隱式的劫持了所在的塊級作用域。 作用域與閉包 如何用js創建10個button標簽,點擊每個按鈕時打印按鈕對應的序號? 看到上述問題,如果你能看出來這個問題實質上是考對作用域的理解,那么恭喜你,這篇文章你可以不用看了,說明你對作用域已經理解的很透徹了,但是如果你看不出來這是一道考作用域的題目,...
摘要:是詞法作用域工作模式。使用可以將變量綁定在所在的任意作用域中通常是內部,也就是說為其聲明的變量隱式的劫持了所在的塊級作用域。 作用域與閉包 如何用js創建10個button標簽,點擊每個按鈕時打印按鈕對應的序號? 看到上述問題,如果你能看出來這個問題實質上是考對作用域的理解,那么恭喜你,這篇文章你可以不用看了,說明你對作用域已經理解的很透徹了,但是如果你看不出來這是一道考作用域的題目,...
閱讀 2580·2021-11-22 09:34
閱讀 948·2021-11-19 11:34
閱讀 2807·2021-10-14 09:42
閱讀 1489·2021-09-22 15:27
閱讀 2391·2021-09-07 09:59
閱讀 1743·2021-08-27 13:13
閱讀 3438·2019-08-30 11:21
閱讀 780·2019-08-29 18:35