ES6中var、let、const 的区别
工具/原料
1
html
2
script
3
代码编辑工具
4
es6
5
var let const
方法/步骤
1
var 与 let 的联系与区别同:都是用来声明变量异:var 全局声明,let 局部声明仅在声明的块级作用域内有效如代码所示最后一个console.log报错,原因:let 局部声明仅在声明的块级作用域内有效
2
let适用于for循环中var a = [];for (var i = 0; i < 10; i++) { a[i] = function () { console.log(i); };}a[2]();var b = []; for (let k = 0; k < 10; k++) { b[k] = function () { console.log(k); };}b[2]();原因:i是var声明的,在全局范围内都有效,console.log(i),里面的i指向的就是全局的i,所以最后输出的是10。。k是let声明的,只在本轮循环局部有效,console.log(k),每一次for循环的k都为新变量,所以最后输出的是2。
3
var 的声明,存在变量提升。let 的声明,不存在变量提升。const 的声明,不存在变量提升。例1:例2:
4
let不允许在相同作用域内,重复声明同一变量。
5
const声明一只读的常量,声明后值不能进行改变
注意事项
1
var为全局变量,在for循环中,容易泄露成了全局变量。
2
let局部变量
3
const常量声明
上一篇:台湾烤肠的做法
下一篇:放置江湖第六章怎么过?