日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

JS运行三部曲

發(fā)布時(shí)間:2023/12/10 javascript 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS运行三部曲 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
  • 語(yǔ)法分析

  • 預(yù)編譯

  • 解釋執(zhí)行

  • 下面兩句話能解決問(wèn)題,但解決不了深入的問(wèn)題,其實(shí)原理是? 預(yù)編譯產(chǎn)生的兩個(gè)現(xiàn)象(規(guī)律)。

    • 函數(shù)聲明整體提升
    • 變量?? 聲明提升

    預(yù)編譯前奏

    imply global 暗示全局變量:即任何變量,如果變量未經(jīng)聲明就賦值,此變量就為全局對(duì)象所有(全局對(duì)象是window)。

    eg: a = 123;

    eg: var a = b = 123;?? 這里的 b 是沒(méi)有聲明的,所以歸window所有,所以如果這個(gè)表達(dá)式出現(xiàn)在局部函數(shù),那么b會(huì)變成全局變量,而a是局部變量,值都是123

    一切聲明的全局變量,全是window的屬性。

    eg: a = 123;?? 相當(dāng)于? window.a = 123;

    window就是全局的域

    預(yù)編譯

    eg - 預(yù)編譯前:

    預(yù)編譯發(fā)生在函數(shù)執(zhí)行前的前一刻

  • 創(chuàng)建AO對(duì)象(Activation Object)
  • 找形參和變量聲明,將變量和形參名作為AO屬性名,值為undefuned
  • 將實(shí)參值和形參統(tǒng)一
  • 在函數(shù)體里面找函數(shù)聲明,值賦予函數(shù)體
  • eg - 預(yù)編譯后:

    全局的預(yù)編譯原理是一樣的,只是對(duì)象是GO(Global Object),window其實(shí)是GO的引用

    2013百度面試題--

    ?

    ?

    總結(jié)

    以上是生活随笔為你收集整理的JS运行三部曲的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。