var 是js定義變量的意思。
由於js中的變量是弱類型的,因此js中的所有變量包括number(數字型)、string(字符串類型)、boolean(布爾類型,true和false)等均通過var關鍵字來定義。
那當我們不用var定義變量呢~
eg:
var num1 = 1;
num2 = 2;
請問num1和num2的區別是?
代碼如上
瀏覽器控制台輸出
用var 定義過的變量,是不能被刪除的,是全局變量。(圖中的num1)
沒有被var定義的變量,是window對象的一個屬性,是可以被刪除的。
當我們在封裝函數的時候,在函數內部定義變量,用var定義,作用於僅在函數內部,不用var定義的變量,在函數外部還是可以取到的。
代碼如下:
在函數中用兩種方式定義變量
那么num3是全局變量還是window的一個屬性呢,我們根據它是否可以刪除來判斷。
代碼如下:
由於輸出num4會報錯所以注銷
所以說在函數內部不用var聲明的變量,也是window上的一個屬性,可以刪除。
本來想寫var和const,let的區別~
但是查閱了資料,准備一步一步來~
都是自己之前沒曾注意到的小細節。
希望自己要堅持一直更新下去。
謝謝讀到這里的人。
本人的代碼生涯剛剛開始,還有很多需要學習的東西,目前也會分享參考一下別人的總結,按照自己的理解重新吸收一些新的知識。感謝在學習的路上有大家陪伴啦~