ES6 从入门到精通 # 02:let 和 const 命令

Posted 凯小默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 从入门到精通 # 02:let 和 const 命令相关的知识,希望对你有一定的参考价值。

说明

ES6 从入门到精通系列(全23讲)学习笔记。

let

1、let 声明变量,没有变量提升

console.log(kaimo);
let kaimo = 10;

2、是一个块作用域

console.log(kaimo)
if(true) 
    let kaimo = 666;

3、不能重复声明

let kaimo = 666;
let kaimo = 777;

const

const 除了 let 的三个特性,还有下面的特性:

1、声明常量,一旦被声明,无法修改

const kaimo = 666;
kaimo = 777;

2、可以声明对象,并能修改对象里面的属性值

const kai = 
    mo: 666
;
kai.mo = 777;

数组也可以修改元素的值:

const a = [1,2,3];
a[0] = 4

作用

作用1、解决 for 变量提升的问题

var arr = [];
for(var i = 0; i < 10; i++) 
    arr[i] = function() 
        return i;
    

arr[6]();


使用 let 跟 const 修改:

const arr = [];
for(let i = 0; i < 10; i++) 
    arr[i] = function() 
        return i;
    

arr[6]();

作用2:不会污染全局变量

let RegExp = 10;
console.log(RegExp);
console.log(window.RegExp);

建议:在默认的情况下用 const,而只有在你知道变量值需要被修改的情况下使用 let。

以上是关于ES6 从入门到精通 # 02:let 和 const 命令的主要内容,如果未能解决你的问题,请参考以下文章

ES6 从入门到精通系列学习笔记 23 篇(完结)

ES6 从入门到精通 # 10:Set 集合数据类型

ES6 从入门到精通 # 10:Set 集合数据类型

ES6 从入门到精通 # 08:扩展的对象的功能

ES6 从入门到精通 # 08:扩展的对象的功能

ES6 从入门到精通 # 07:解构赋值