美文网首页工作生活
JavaScript中var let const的区别详解

JavaScript中var let const的区别详解

作者: DF_Sky | 来源:发表于2019-07-01 17:42 被阅读0次

    1.先说const
    官方点的定义:常量是块级作用域,很像使用 let 语句定义的变量。常量的值不能通过重新赋值来改变,并且不能重新声明。
    我们来用代码举例 更加清晰

    image.png

    证明 必须初始化 这个错误就是缺少初始化的意思

    image.png

    证明确实 我们不能重新赋值

    image.png

    我们尝试着改变了一下它的值 发现并没有报错 且成功了 说明值本身是可以修改的


    image.png

    我们给他增加了一个属性 发现也是可行的
    但是为什么 前面我们重新赋值 却会报错 所以我们可以这样认为 他只是针对地址不可变 而并不是实际指向的内容 这样也就能解释了我们上面测试的几种情况

    2 再说var 官方点的定义:声明一个变量,并可选地将其初始化为一个值
    这个相信只要接触过js得,都懂 其实没什么说的

    3 let 声明一个块级作用域的本地变量,并且可选的将其初始化为一个值
    烤了一串代码 一看就懂

    function varTest() {
      var x = 1;
      if (true) {
        var x = 2;  // 同样的变量!
        console.log(x);  // 2
      }
      console.log(x);  // 2
    }
    
    function letTest() {
      let x = 1;
      if (true) {
        let x = 2;  // 不同的变量
        console.log(x);  // 2
      }
      console.log(x);  // 1
    }
    

    相关文章

      网友评论

        本文标题:JavaScript中var let const的区别详解

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