let命令

所声明的变量只在let命令所在的代码块有效

let命令_第1张图片

变量i是在let声明,因此每次循环i都是一个新的变量,因此最后输出的是6

for循环设置循环变量的那一部分是一个父作用域,循环体内部是一个子作用域,见代码:

let命令_第2张图片

不存在变量提升

变量应在声明语句之后才可以使用,否则会报错,见代码:

let命令_第3张图片

暂时性死区

只要块级作用域存在let,它所声明的变量就会"绑定"这个区域,不再受外部的影响,见代码:

let命令_第4张图片

有些"死区"比较隐秘,见代码:

let命令_第5张图片

本质就是:只要进入当前作用域,所要使用的变量就已经存在,但是不可获得,只有等到声明变量的哪那一行代码出现,才可以获得和使用该变量

不允许重复声明

let不允许在相同作用域内重复声明同一个变量,见代码:

let命令_第6张图片

你可能感兴趣的:(let命令)