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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实例讲解js中的预编译

發(fā)布時間:2025/6/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实例讲解js中的预编译 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

js作為一本腳本語言,可以不經(jīng)過編譯直接運行,但遇到預編譯的問題,尤其是變量或函數(shù)同名時,這點知識就尤其必要了。為了更好地了解js語言背后的運行機理。筆者采用實例化的方式講解我理解的預編譯。

?? 理解預編譯首先要弄清楚兩種概念:函數(shù)聲明和變量賦值。

[javascript]?view plaincopy
  • function?ledi(){?}//函數(shù)聲明??
  • 這種形式的寫法是函數(shù)聲明,即聲明一個函數(shù),腳本在執(zhí)行之前會做預編譯處理。

    [javascript]?view plaincopy
  • var?ledi=?function(){?}//變量賦值??

  • ?? 這種寫法是變量賦值,函數(shù)在js語言里也是一種數(shù)據(jù),匿名函數(shù)作為變量賦值給定義的變量。這種形式在預編譯處理階段,只會給變量ledi分配一個內(nèi)存空間,不會做初始化。初始化過程中會在執(zhí)行時執(zhí)行。

    ???好了,弄清楚以上概念,上實例。實例參考(點擊此處)。原作者只詳細解釋了前兩個實例,而筆者看來,接著的兩個也非常重要,那么筆者就甄別出代表性來講解。

    示例代碼一:

    [javascript]?view plaincopy
  • function?ledi(){???
  • alert('ledi1');???
  • };???
  • ??
  • ledi();???
  • function?ledi(){???
  • alert('ledi2');???
  • };???
  • ledi();???
  • ???這段代碼,首先判斷兩個都屬于函數(shù)聲明。都會在預編譯階段處理,而函數(shù)名相同,會按后定義的來定義函數(shù),在執(zhí)行階段只會看到后定義的函數(shù)結果,也就不難理解了。

    示例代碼二:

    [javascript]?view plaincopy
  • var?ledi?=?function(){alert('ledi1');};???
  • ledi();???
  • ledi?=?function(){alert('ledi2');};???
  • ledi();???
  • ? 這段代碼,首先判斷兩種都屬于變量賦值。在預編譯階段,兩個變量名一樣,分配一個內(nèi)存空間存放變量ledi內(nèi)容。當代碼執(zhí)行時,按照順序執(zhí)行和賦值,會先后得到兩種結果。

    示例代碼三:

    [javascript]?view plaincopy
  • function?ledi(){alert('ledi1');};???
  • ledi();???
  • ledi?=?function?(){alert('ledi2');};???
  • ledi();???
  • ???這段代碼,首先判斷,前一種屬于函數(shù)聲明,后一種屬于變量賦值。預編譯處理完,首先執(zhí)行第二行,實際上是第一行的內(nèi)容,第三行相當于將ledi變量重新賦值即初始化,重新賦值后,第四行執(zhí)行第三行的函數(shù)。

    示例代碼四:

    [javascript]?view plaincopy
  • window.alert(ledi);??
  • function?ledi(){??
  • }??
  • //這四行代碼分開執(zhí)行??
  • window.alert(ledi);??
  • var?ledi?=?123;??
  • ? 以上代碼分開執(zhí)行,可驗證,函數(shù)預編譯會執(zhí)行,變量賦值則是先分配空間,執(zhí)行時再賦值。

    總結

    以上是生活随笔為你收集整理的实例讲解js中的预编译的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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