es6-let const

let

一、let声明的变量只在命令所在的代码块内有效
二、使用let命令声明的变量在解析的过程当中不会被预解析(也就是不存在变量提高了)
三、使用let命令声明的变量会存在暂时性死区
四、不一样于var全局变量再也不是 window的属性了code

let f=10;
    function aa() {
        f=3;     //会报错  出现了暂时性死区
        let f=12;    
        return f;
    }
    console.log(aa())

使用let这个变量不容许再重复声明 (var声明过的变量也不能够再使用let来声明了)
四、let在for循环中的使用 在循环语句以内是一个父做用域 在循环体中是一个子做用域作用域

for(let i=0;i<10;i++){
        let i=10;
        console.log(i)   //10个10 
   }
   console.log(i)   //访问出错  i没有被定义

const

const 声明的常量有以下的特色
一、所声明的常量只能在命令所在的代码块有效
二、声明的常量不会被提高
三、不能声明已经被声明过的常量 或者var 声明过的变量
使用const声明变量的时候 有以下的规则
一、声明的时候必须赋值
二、声明的常量是基本的数据类型 值是不能够被改变的
声明的常量是引用类型 只要这个变量的地址不被改变 值是能够改变的io

相关文章
相关标签/搜索