美文网首页
es6-let与const

es6-let与const

作者: 王童孟 | 来源:发表于2018-09-15 16:24 被阅读0次

    作用域的概念

    es5 两个作用域:全局作用域、函数作用域

    es6 增加了块作用域

    let

    • let var 作用域不同,let 只在块级作用域有效
    • 使用 es6 强制开启严格模式,未声明会报错;es5 中使用 "use strict"
    • let 不能重复定义变量
    function test(){
      for(let i=1;i<3;i++){ // 块级作用域
        console.log(i);
      }
      console.log(i); // 报错:Uncaught ReferenceError: i is not defined
    }()
    
    function test1(){
      for(var i=1;i<3;i++){ // 函数作用域
        console.log(i);
      }
      console.log(i); // 1 2 3 
    }()
    

    const

    • 声明常量,不能修改。
    • const 也有块级作用域。
    • 声明时必须赋值。
    • 数值不允许修改;引用类型赋值,存的是指针,指针不能变,但是引用类型可以变。
    function last(){
      const PI=3.1415926; // const 声明常量
      const k={ // const 声明对象,指针没变,但可以改变对象内容
        a:1
      }
      k.b=3;
      console.log(PI,k);
    }()
    

    相关文章

      网友评论

          本文标题:es6-let与const

          本文链接:https://www.haomeiwen.com/subject/blhtnftx.html