let和const定义和常见错误

  let const  定义变量   , *****常用

       1-不能重复定义

       2-没有声明提升,变量只能先定义 后使用

       3-新增块级作用域(局部作用域) 使用let 定义id变量 在代码内 就是局部变量,不是全局变量


 

      // Cannot access 'a' before initialization

      //   console.log(a);   暂时性死区

      //不能在未定义a前访问a

      //console.log(a);

      let a = 1;

      //变量a已经被声明不能再次声明

      // Uncaught SyntaxError: Identifier 'a' has already been declared

      //let a = 1;

      console.log(a); //1

     

      //var 可以声明多次 可以先访问后定义 但是后要必须定义

      //未定义b会报错ncaught ReferenceError: b is not defined

        console.log(b)

      //b未定义

     console.log(b); //undefined

      //var b = 2;

     // var b = 2;

      console.log(b); //2

      if (a === 1) {

        console.log(11);

        let age = 19;

        var ppp = 20;

      }

      console.log(ppp); //20

     //if语句只是添加了一个条件判断

     //还是在全局的

     //var 预解析会提前

     console.log(ppp)//20

       //let不会像var 预解析

      // console.log(age); //报错  age is not defined

      /*

        let  变量

        const 常量  ,常量不能被重新赋值,量必须在定义的时候赋值

        */

      let a1 = 10;

      a1 = 200;

      console.log(a1); //200

      const PI = 3.1415;

      //TypeError: Assignment to constant variable. 修改固定变量

      //不能赋值常变量

      //   PI = 3.1415926;

      let a2;

      a2 = 300;

      console.log(a2);

      //报错

      //   常量必须在定义的时候赋值

      //Missing initializer in const declaration

      //const a3

      //a3 = 223;

      const obj = { name: "zhangsan" };

      //修改对象的属性

      obj.name = "lisi";

      console.log(obj); //{name: 'lisi'}

      //报错

      //赋值给常变量

      //: Assignment to constant variable.

      obj = { age: 17 };

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值