在做輪播圖的時候出現了一個問題:如果定義兩個完全相同的變量會發生什么:
- 1.兩個全局變量:
var num = 10; var num =100;
這種情況下很明顯輸出num的話會是100,但是內存中會存在幾個num呢?
如果在其他編程語言中,這樣會被認為重復定義,編譯就通不過!
但是在JS中,可以這樣聲明不會報錯,

也就是說仍然只存在一個num,和下面效果相同
var num = 10; num = 100;
- 2.兩個局部變量
在函數內部用var定義局部變量,沒有問題。可以在多個函數中定義多個相同的變量名,這些變量的作用域不同,不會互相影響,內存中可以存在多個。
- 3.全局變量和局部變量同名
當前全局變量和局部變量重名時,在函數內部使用的是局部變量,內存中也可以存在多個相同的變量名
