騰訊的一個筆試題,先看一下.net
var a = 100;
function fn() {
alert(a); //undefined
var a = 200;
alert(a); //200
}
fn();
alert(a); //100
var a;
alert(a); //100
var a = 300;
alert(a); //300
前兩個很簡單,不解釋 了,涉及到聲明提早的問題。blog
後面仨爲啥呢,這要總結下重複聲明的問題:
1.使用var語句屢次聲明一個變量不只是合法的,並且也不會形成任何錯誤.ip
2.若是重複使用的一個聲明有一個初始值,那麼它擔當的不過是一個賦值語句的角色.io
3.若是重複使用的一個聲明沒有一個初始值,那麼它不會對原來存在的變量有任何的影響.
---------------------
做者:juzipchy
來源:CSDN
原文:https://blog.csdn.net/juzipchy/article/details/70138857
版權聲明:本文爲博主原創文章,轉載請附上博文連接!function