首页 > 代码库 > ES6系列一 let const
ES6系列一 let const
一丶let
1.使用let声明一个变量,会生成一个独立的作用域,比var的作用域更为严谨,比如for循环
var a = [];
for (var i = 0; i < 10; i++) {
a[i] = function () {
console.log(i);
};
}
a[6](); // 10
var a = [];
for (let i = 0; i < 10; i++) {
a[i] = function () {
console.log(i);
};
}
a[6](); // 6
2.暂时性死区:在代码块内,使用let
命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)。
3.不能重复性声明: 同一作用域下,var重复声明不会报错,let和const重复声明会报错。
二丶const
1.const声明一个只读变量,不可更改值,否则则会报错,但对象和数组可以更改内存指针。比如
const foo = {}; // 为 foo 添加一个属性,可以成功 foo.prop = 123; foo.prop // 123
const a = [];
a.push(‘Hello‘); // 可执行
a.length = 0; // 可执行
a = [‘Dave‘]; // 报错
ES6系列一 let const
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。