let 和 var 的区别笔记
2024-09-03 01:41:38
参考文章:阮一峰 ECMAScript 6 入门
ES6中新增加了 let 声明,它跟 var 的区别如下:
1、作用域不同,let 只在代码块中有效
{
var a = '123';
let b = '456';
} a; //'123'
b; //ReferenceError: b is not defined.
2、建议在 for 循环中使用 let 申明变量
for (let i = 0; i < 10; i++) {
// ...
} console.log(i);
// ReferenceError: i is not defined
如果你用的是 var,那么上面的结果就是10 了。
3、for 循环需要注意的是,设置循环的部分是一个父级作用域,循环体内部是一个单独的子作用域。
for (let i = 0; i < 3; i++) {
let i = 'abc';
console.log(i);
}
// abc
// abc
// abc
这个例子很好佐证了循环体内部的变量 i 和 循环变量 i 不是同一个作用域。
最新文章
- UITableView优化
- python3 实现简单的信用卡还款,取款转账功能V2
- MFC学习笔记
- HTML Minifier - 灵活的在线 HTML 压缩工具
- Beta版本——第一次冲刺博客
- ACM/ICPC 之 平面几何-两直线关系(POJ 1269)
- JS魔法堂:精确判断IE的文档模式by特征嗅探
- 随堂练习——Rational rose
- 洛谷P2327 [SCOI2005] 扫雷
- 单机安装TFS(转载)
- 升级到WP8必需知道的13个特性
- Oracle 体系结构2 - 实例和数据库
- php验证输入字符串中含有非法字符
- python第一步
- 手把手教你webpack、react和node.js环境配置(下篇)
- MYSQL 子查询返回多列显示
- LVM基本应用,扩展及缩减实现!
- 新版ios证书的申请
- 20165214 2018-2019-2 《网络对抗技术》Exp1 PC平台逆向破解 Week3
- ubuntu16.04如何安装floodlight并且连接eclipse