ES6学习(一)---let和const用法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29329037/article/details/79380427

1.let用法

(1)存在作用域,即let声明函数会在花括号中执行
(2)es6规定暂时性死区,暂时性死区通俗的来讲就是一个区块中存在let和const声明的变量,那么该区块会形成封闭作用域,在let和const声明之前使用该变量都会报错。

//例子1
{
console.log(a);//a is not defined
let a = 1;
}
//列子2
{
let x = x;//同样会出现x is not defined
}

这样规定,是为了让大家在写代码的时候更加规范。
(3)let不允许重复声明变量

{
let a = 1;
let a = 2;
}//这样会报错

(4)es6不存在变量提升,变量只能在使用let声明后使用
(5)如果在作用域外声明了变量,则该作用域变量let声明的变量不会受到影响

var a  = 10;
{
let a = 100;
console.log(a); //100
}

(6)对于for循环中用let声明括号中的相当于一个父作用域,花括号里的是子作用域

2.const的用法

(1)const也存在不允许变量提升、暂时性死区、不可再统一作用域内声明统一变量。
(2)const一旦声明变量,就无法通过赋值改变。

{
const a = 1;
a = 2; 
//会报错
}

(3)const声明变量必须赋值,否则会报错。

const b;
//会报错,应该立即给b赋值

(4)const变量是一个数组或对象的时候,可以给其属性赋值

const a = [];//或者a = {}
a.name = 'zs';
a.age = 18;

猜你喜欢

转载自blog.csdn.net/qq_29329037/article/details/79380427