ES6变量声明方式:
- const(用于对常量的声明) - let(用于对变量的声明) - 解构赋值
ES6变量声明的特性:
1. 不属于顶层对象window 2. 不允许重复声明 3. 不存在变量提升 4. 暂时性死区 (在变量没有声明之前不能用。所以没有声明之前的区别就加暂时性死区) 5. 块级作用域 (在作用域外不能调用) const的补充特性: 1. 定义的变量不能在更改它的值 基本数据类型不能改变 引用数据类型的地址不可以改变但是地址指向的内容可以发生改变 2. 定义变量的时候就必须赋值
ES6中的解构赋值
用法说明:等号左右两边的结构得一致(数组=数组 对象=对象)
解构特性:解构传值是惰性的 (你传给我我就用,不传给我 我就用之前的
有关变量提升的代码:
console.log(a);
var a=5;//var 存在变量提升
var a;
console.log(a);
a=5;
console.log(a);
let a=5;//语法错误
有关不属于顶层变量的代码
let aa="aikouding";
console.log("aa");
console.log(window);