ES6语法学习day1之 let
时间:2026-07-02 标签: 分享, ES6, 语法,准备学习 node.js ,在此之前先学习 ES6 语法
var 与 let 的区别
var:变量声明,全局有效let:竟在所在的代码块生效
1 | { |
运行效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\let.js |
在这段代码里,let 和 let b = 2 不在一个代码块里,无法调用
正确写法
1 | { |
运行效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\let.js |
这回成功打印了 let a = 1 的变量 var b = 2 ,1 2
for 的 let
1 | for (let i = 0; i < 10; i++) { |
同样的,for (let i = 0; i < 10; i++) 和 console.log(i); 不在一个代码块里,无法调用
运行结果
1 | PS C:\Users\Admin\Documents\node-learn> node .\for.js |
正确写法
1 | for (let i = 0; i < 10; i++) { |
运行效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\for.js |
对比 var 和 let 在 for 循环中的区别
1 | // 当使用 var 计数器定义是 |
效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\for1.js |
1 | // 当使用 let 定义计数器时 |
效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\for1.js |
如何在使用 let 定义计数器时,打印 10
1 | // 在使用 let 时让 a 打印 10 |
for 循环的 父作用域 与 子作用域
1 | for (let i = 0; i < 3; i++) { |
效果
1 | PS C:\Users\Admin\Documents\node-learn> node .\for2.js |
不存在变量提升
1 | console.log(a); // var 声明提升,此时 a 已存在但未初始化,输出 undefined |
效果
1 | PS C:\Users\Admin\Documents\node-learn> node var.js |
暂时性死区
1 | var tmp = 123; // 外层作用域声明 tmp 并赋值为 123 |
效果
1 | S C:\Users\Admin\Documents\node-learn> node var1.js |
tips:代码旁的注释为 AIGC 负责生成