最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS變量提升及函數提升實例解析

 更新時間:2020年09月03日 15:42:06   作者:歆冉  
這篇文章主要介紹了JS變量提升及函數提升實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1在js中只有兩種作用域

a:全局作用域

b:函數作用域

在ES6之前,js是沒有塊級作用域。

首先來解釋一下什么是沒有塊級作用域?

所以此時 是可以打印輸出變量a的值。

2:什么是變量提升?

在我們的js中,代碼的執(zhí)行時分兩步走的,1、預解析 2、一步一步執(zhí)行

在預解析階段:首先會在全局作用域內,js解析器會找所有的 var 、function 、參數,并提前到當前作用域的最頂上去(變量的賦值操作不會提前,還在原來的地方),此時并沒有執(zhí)行代碼。

然后再開始一行一行執(zhí)行代碼。遇到了函數調用,于是進入到函數作用域內,又開始分兩步驟走,1、預解析 2、一步一步執(zhí)行。以此類推。

那么變量提升就是變量聲明會被提升到作用域的最頂上去,也就是該變量不管是在作用域的哪個地方聲明的,都會提升到作作用域的最頂上去。

即變量可以在聲明之前使用,值為undefined。

那么上面這種寫法其實等價于下面這種寫法:

看幾個例子:

把上面的例子稍作改動:

結果就會大不一樣,

再看一個例子:

3:什么是函數提升?

輸出的結果是:

注意:函數聲明式,會將函數的聲明和定義一起提升到作用域的最頂上去。

如果是這種寫法:函數表達式聲明的函數

例子:

輸出的結果是:

最后的總結:

1:所有的聲明都會提升到作用域的最頂上去。

2:同一個變量只會聲明一次,其他的會被忽略掉。

3:函數聲明的優(yōu)先級高于變量申明的優(yōu)先級,并且函數聲明和函數定義的部分一起被提升。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • javascript數組對象常用api函數小結(連接,插入,刪除,反轉,排序等)

    javascript數組對象常用api函數小結(連接,插入,刪除,反轉,排序等)

    這篇文章主要介紹了javascript數組對象常用api函數,結合實例形式總結分析了javascript針對數組的連接、刪除、反轉、排序、插入等操作相關函數用法,需要的朋友可以參考下
    2016-09-09
  • js事件驅動機制 瀏覽器兼容處理方法

    js事件驅動機制 瀏覽器兼容處理方法

    下面小編就為大家?guī)硪黄猨s事件驅動機制 瀏覽器兼容處理方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • Openlayers繪制地圖標注

    Openlayers繪制地圖標注

    這篇文章主要為大家詳細介紹了Openlayers繪制地圖標注,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • javascript設計簡單的秒表計時器

    javascript設計簡單的秒表計時器

    這篇文章主要介紹了javascript設計簡單的秒表計時器,該秒表將包括兩個按鈕和一個用于顯示時間的文本框,當單擊開始按鈕時開始計時,最小單位為0.01秒,此時再次單擊按鈕則停止計時,文本框顯示經過的時間,需要的朋友可以參考下
    2015-11-11
  • 使用webpack和rollup打包組件庫的方法

    使用webpack和rollup打包組件庫的方法

    這篇文章主要介紹了使用webpack和rollup打包組件庫的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • javascript線性漸變一

    javascript線性漸變一

    javascript在處理圖像的能力其實是不弱的,可惜瀏覽器大戰(zhàn)連累了它,這還不算,Adobe 收購Macromedia更讓SVG處于怠工狀態(tài)。
    2009-10-10
  • 兼容ie和firefox js關閉代碼

    兼容ie和firefox js關閉代碼

    最近做項目的時候碰到一個問題: 在js里面使用window.close(),IE下工作正常,但是FireFox下有時可以,有時不行。
    2008-12-12
  • 現代 javscript 編程 資料

    現代 javscript 編程 資料

    現代 javscript 編程 資料...
    2007-04-04
  • iframe父頁面獲取子頁面參數的方法

    iframe父頁面獲取子頁面參數的方法

    這篇文章主要介紹了iframe父頁面獲取子頁面參數的方法,需要的朋友可以參考下
    2014-02-02
  • 微信小程序支付及退款流程詳解

    微信小程序支付及退款流程詳解

    近期在做微信小程序時,涉及到了小程序的支付和退款流程,所以也大概的將這方面的東西看了一個遍,就在這篇文章里總結一下
    2017-11-11

最新評論

库尔勒市| 新竹县| 朔州市| 瑞金市| 新宁县| 连城县| 葵青区| 栖霞市| 北碚区| 呼和浩特市| 临洮县| 和龙市| 平果县| 哈巴河县| 内乡县| 海城市| 尤溪县| 龙州县| 佛坪县| 革吉县| 台中县| 广河县| 马龙县| 富民县| 南川市| 虞城县| 阿拉善左旗| 达孜县| 忻城县| 株洲市| 福清市| 金坛市| 门头沟区| 简阳市| 开鲁县| 拜城县| 卫辉市| 石景山区| 宁陵县| 吉隆县| 镶黄旗|