首页 > Web开发 > 详细

js小笔记 -- let const的理解

时间:2018-11-22 14:21:29      阅读:127      评论:0      收藏:0      [点我收藏+]
ES6 增加let命令声明变量,类似于var,但是所声明的变量,只在let声明的变量只在声明所在的代码块内有效,无法变量提升,可以解决for块中条件变量的使用问题。

如:

var a = [];
for (var i = 0; i < 10; i++) {
a[i] = function () {
console.log(i);
};
}
a[6] () // 显示10

let解决块中变量提升带来的麻烦

for (let i = 0; i < 10; i++) {
// ...
}

const实际上保证的,并不是变量的值不得改动,而是变量指向的那个内存地址所保存的数据不得改动。所以对于结构体或数组,指向内存地址所保存的值是一个地址地址,所以其中包含的其他元素值可以发生改变:

const a = [];
a.push(‘Hello‘); // 可执行
a.length = 0; // 可执行
a = [‘Dave‘]; // 报错,a为产量是不能赋予前他新的数组地址值

js小笔记 -- let const的理解

原文:http://blog.51cto.com/13238147/2320429

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!