ES6 let const关键字

Posted jnba

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 let const关键字相关的知识,希望对你有一定的参考价值。

在es6中,引入了let和const关键字;

1、let
ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。

(1)在块级作用域里有效(比如循环遍历内部就可以用let定义变量)

<script type="text/javascript">
    {
        let a = 10;
        var b = 1;
    }
    console.log(b);
    console.log(a);
</script>

报错:ReferenceError: a is not defined

(2)不能重复声明

<script type="text/javascript">
    {
        let a=0;
        let a=2;
    }
</script>

Uncaught SyntaxError: Identifier ‘a‘ has already been declared

(3)不存在变量提升

var命令会发生“变量提升”现象,即变量可以在声明之前使用,值为undefined

这种现象多多少少是有些奇怪的,按照一般的逻辑,变量应该在声明语句之后才可以使用。

为了纠正这种现象,let命令改变了语法行为,它所声明的变量一定要在声明后使用,否则报错。

<script type="text/javascript">
    console.log(a);//undefined
    var a=1
    console.log(b);// Uncaught ReferenceError: Cannot access ‘b‘ before initialization
    let b=1
</script>

 

2、const

const声明一个只读的常量。一旦声明,常量的值就不能改变。

<script type="text/javascript">
    const PI = 3.1415;
    PI = 3;
</script>

Uncaught TypeError: Assignment to constant variable.

以上是关于ES6 let const关键字的主要内容,如果未能解决你的问题,请参考以下文章

ES6语法:let和const

JavaScript ES6 的let和const

ES6语法

ES6中的let和const关键字

ES6简介

React_02_ECMAScript6