午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

javascript - js的執(zhí)行順序是怎樣的?

瀏覽:211日期:2023-05-12 14:17:05

問題描述

1.沒弄懂js的執(zhí)行順序,執(zhí)行下面代碼,剛開始alert的時候,a還沒有聲明,不是應該直接報錯嗎?為什么先是顯示這個function,然后顯示10,顯示3,最后還報錯了?不是一開始就應該報錯了嗎?

alert(a)a();var a=3;function a(){alert(10)}alert(a)a=6;a()

javascript - js的執(zhí)行順序是怎樣的?

問題解答

回答1:

問了下同學,知道了為什么會出現(xiàn)那樣的情況,首先要明白的概念1.js中,變量聲明和函數聲明是會提前的,并且函數聲明會優(yōu)于變量聲明。所以,在聲明a之前alert(a),并不會報錯。以及,第一個alert,出現(xiàn)的是a這個function,并不是變量a。2.第二個alert,無需多言,只是執(zhí)行a這個函數。3.第三個alert,結果是3,因為運行到了這里之前,執(zhí)行了 var a=3;。所以a變成了3。4.最后報錯是因為,執(zhí)行到a();a進行了兩次賦值,第一次是var a=3;,第二次是a=6;,但是無論怎樣,a都不是函數,所以報錯了。

回答2:

第一個輸出 function 是因為作用域提升(hoisting)。第二個輸出 10 是第二行 a() 的輸出。第三個輸出 3 是倒數第三行 alert(a) 的輸出。最后一個報錯是來自最后一行 a()。因為這時候 a 被重新賦值為數字 6,已經不是 function 了。執(zhí)行 a() 當然會報錯。

回答3:

變量聲明提升么,記住下面幾條規(guī)則就好了。

http://zonxin.github.io/post/...

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 欧美成年人 | 97视频免费在线观看 | 欧美三级美国一级 | 一区二区av | 国产婷婷精品 | 四虎在线观看 | 日日夜夜精品视频免费 | 亚洲精品在线视频观看 | 4虎最新网址 | 亚洲成人久久久 | 国产精品18 | av在线亚洲天堂 | 亚洲一级黄色 | 成年人黄色小视频 | 欧美精品福利 | 九九热在线免费观看 | 秋霞av在线 | 国产精品19乱码一区二区三区 | 日韩视频在线一区二区 | 中文久久乱码一区二区 | 一级性爱视频 | 国产99热| 成人小网站 | 一级一级黄色片 | 好吊色欧美一区二区三区视频 | 三级视频欧美 | 欧美亚洲激情 | а√天堂8资源中文在线 | 午夜超碰| 加勒比在线视频 | 久久久久久久久免费 | 国产一区二区三区精品视频 | 亚洲精品一级 | 国产精品自拍99 | 秋霞影院午夜老牛影院 | 亚洲日本黄色 | 国产毛片视频 | 日韩中文字幕网 | 在线播放日韩 | 日批网站在线观看 | 一二三不卡视频 |