// 声明变量
let a;
let b,c,d;
let e=100;
let f=521,g='qqq',h=[];
// 1、变量不能重复声明:eg:
// let star='6';
// let stsr='6';报错
// 2、块级作用域
// {
// let name='66'
// }
// console.log(name)//报错
// 3、存在变量提升,但会出现暂时性死区导致无法调用
// console.log(song);报错
// let song="456"
// 例子es5
for(var i = 0;i<3;i++){
setTimeout(()=>{
console.log(i)
},100)
}
// 3 3 3
// why?
// i是全局的,进行了自增输出最后结果3
// var i=0;
// {
// i=0;
// }
// {
// i=1;
// }
// {
// i=2;
// }
for(let i = 0;i<3;i++){
setTimeout(()=>{
console.log(i)
},100)
}
// 声明了3个i
// {
// let i=0
// }
// {
// let i=1
// }
// {
// let i=2
// }