今天的码农女孩总结了let命令和const命令

let命令:

            1.块级作用域(区分全局变量和局部变量:在function中是否使用var声明),只有在{}内有效,与function无关

            2. 不存在变量作用域提升:使用let必须先声明在使用

            3.不允许重复声明

            4.暂时性死区

            5.全局变量与window没有关系,严格区分window对象和全局对象

            6.块级声明

<script>
       //举例1
       if(true){
           var a=1;
           let b=2;
           console.log(b);//2
       }
       console.log(a);//1
       console.log(b);//b is not defined

       //举例2
       console.log(a);//undefined
       var a=1;
       console.log(b);//b is not defined
       var b=2;

       //举例3
       var a=1;
       var a=2;
       console.log(a)//2
       let b=3;
       let b=4;
       console.log(b)//'b' has already been declared

       //举例4
       var name="Tim";
       if(true){         
           console.log(name);//name is not defined
           let name="Kitty";
       }

       //举例5
       var a=1;//全局变量
       console.log(window.a);//1
       function fn(){//全局方法
           console.log('hello');
       }
       window.fn();//hello
       
       let b=2;//全局变量
       console.log(window.b);//undefined

       //举例6
       "use strict";//严格模式
       {
           function test(){
               console.log('test');
           }
       }
       test();//test is not undefined

</script>

const命令:

            1.常量值一旦声明不可改变,一般定义常量使用全部大写(开发规范)

            2.不可重复声明

            3.声明必须赋值,防止意外修改

            4.先声明在使用,作用域和let一样

            5.对象常量,内容可变,引用地址不可变

<script>
      //举例1
      const A=12;//定义常量A
      console.log(A);//12

      //举例2
      const B=12;
      console.log(B);
      const B=13;//Identifier 'B' has already been declared

      //举例3
      const C;//Missing initializer in const declaration

      //举例4
      if(true){
           const D=20;
           console.log(D);//20
       }
       console.log(D);//访问不到

       //举例5
       const E={name:'Tim',age:1}
       console.log(E.name);//Tim
       E={name:'Kitty'};//Assignment to constant variable
       E.name='Kitty';
       console.log(E.name);//Kitty
</script>

了解冻结常量对象

<script>
       const E1=Object.freeze({name:'Tim',age:1});
       console.log(E1.name);//Tim
       E1.name='Kitty';
       console.log(E1.name);//Tim
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值