當(dāng)時應(yīng)聘的時候被問到過這個問題,所以記錄下
var?和?let的區(qū)別
1.let是作用于代碼塊中(就是{}),var是作用于函數(shù)中
例子:
for?(var?a=0;a<5;a++)?{
??????setTimeout?(function?()?{
????????????console.log(a);
??????},1)
}
輸出:5打毛;5察署;5闯参;5镊尺;5;
for?(let?a=0;a<5;a++)?{
??????setTimeout?(function?()?{
????????????console.log(a);
??????},1)
}
輸出:0;?1;?2;?3;?4;
2.在函數(shù)中尖滚,var可以重復(fù)申明喉刘,let只能申明一次