ES6中的const&let
2018-03-14 本文已影响0人
不正经开发者
const
conts 用来定义常量,所谓常量就是物理指针不可以更改的变量,且必须赋值,没有变量提升。
①:当声明普通数据类型的时候,那么一但声明了,就不可以再改变。
const a = 1;
a = 2; //Uncaught TypeError: Assignment to constant variable.
②:当声明复杂数据类型的时候,物理指针不可以改变,但是可以改变数据内的属性值,以及可以给数据添加新属性等操作。
const o = {a: 1};
o.a = 2;
o.b = 3;
console.log(o);
o = {}; // 报错
let
使用 let 声明的变量,只能在当前代码块中访问和使用,有些类似于函数作用域,但是它又有几点不同的地方。
let 声明变量,变量不会被提升。
function fn1(){
console.log(a);
let a = 1;
}
fn1(); // 报错
var b = 2;
function fn2(){
console.log(b);
let b = 1;
}
fn2(); // 报错