初识ES6

109 阅读1分钟

ES6

1.ES6 的新增语法

1.1使用let关键字声明变量
1.1.1let声明的变量只在所出的块级作用域有效

iftrue){

let a=10;

}

console.log(a);

1.1.2使用let关键字声明的变量没有变量提升
console.log(a);

let a=100;
//变量先声明再使用ES6之前变量可以先使用再声明
1.1.3使用let关键字声明的变量具有暂时性的死区特性
var num=100if(true){

console.log(num);

let num=20;

}
1.2let经典面试题
let arr=[];
for(let i=0;i<2;i++){
arr[i]=function(){
console.log(i);
}
}
arr[0]();//0
arr[1]();//1
1.3 const

作用:声明常量,常量就是值(内存地址)不能改变的量;

1.3.1具有块级作用域
if(true){

const a=10;
if(true){
const a=20;
   console.log(a);//20
}
    console.log(a);//10
}
console.log(a);//a is not defined

输出结果分别为20 10 报错,这正好说明了const的块级作用域的结果

1.3.2声明常量时必须赋值

const PI;//Missing initializer in const declaration

1.4const let var 的区别