當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
javascript --- 变量提升的理解
生活随笔
收集整理的這篇文章主要介紹了
javascript --- 变量提升的理解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
看下面一段代碼:
(function () {var x = foo();var foo = function foo () {return "foobar";};return x; })();(不許打出來)猜猜返回結果是什么…
答案是
下面來解釋為什么會這樣,首先得明白:
1.如果變量聲明了但未賦值,則會顯示undefined
2.如果給一個聲明的變量賦值一個未定義的函數(bar)的執行結果.會顯示bar is not a function
3.在函數中,函數及變量的聲明(var)都會被提升到頂部
明白了這些之后,回到最初的栗子:
外層是一個立即執行函數(function(){ … })()
中間部分:
當執行到 x = foo()時, 由于foo不是一個函數.故會拋出錯誤(foo is not a function).函數停止執行.
總結
以上是生活随笔為你收集整理的javascript --- 变量提升的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么软件可以搜索python答案_【py
- 下一篇: 出现一个黑色框按不动_创意 | 这才是走