zoukankan      html  css  js  c++  java
  • 1-ES6之let和const用法

    一:let用法三个特性

    1)声明变量,没有变量提升(没有声明之前不能使用)

    2)是一个块作用域

    3)不能重复声明

    <script>
        //1. let申明变量,没有变量提升
        //Uncaught ReferenceError: a is not defined
        console.log(a)
        //let a=10;
        //2. 是一个块作用域
        if (1===1){
            let b=10;
        }
        //1.html:15 Uncaught ReferenceError: b is not defined
        //console.log(b)
        //3.不能重复声明
        let a=10;
        let a=20;
        //Uncaught SyntaxError: Identifier 'a' has already been declared
        console.log(a)
    </script>
    

     二:const用法

       1)声明常量,一但被声明,不能修改

      2)声明,没有变量提升(没有声明之前不能使用)

      3)是一个块作用域

      4)不能重复声明 

      5)onst声明常量是个对象,不能直接修改变量,但是可以修改常量里面属性
    <script>
        //1. const声明常量后,不能被修改,而且声明前完成初始化
        const  PI =3.14
        console.log(PI)
    
        //2 const常量使用前必须先声明
        //Uncaught ReferenceError: a is not defined
        //console.log(a)
    
        //3. const块作用域
        if (1===1){
            const P2="1111";
        }
        //Uncaught SyntaxError: Unexpected identifier
        //console.log(P2)
    
        //4. const声明常量,不能重复声明
        const P3="1111";
        //const P3="1111";
        //Uncaught SyntaxError: Identifier 'P3' has already been declared
        console.log(P3)
    
        //5 const声明常量是个对象,不能直接修改变量,但是可以修改常量里面属性
        const person ={
            name:"1111"
        }
        person.name=222
        //{name: 222}
        console.log(person)
        //Uncaught SyntaxError: Identifier 'person' has already been declared
        const person ={
            age:"3333"
        }
    </script>
    

      三:使用场景

        //1.使用场景:for 循环例子
    
        var arr = []
        for (var i =0;i<10;i++){
            arr[i] =function(){
                return i;
            }
        }
    
        console.log(arr[5]());
        //结果10 var有提升变量作用,最后i变成10了
        var arr = [];
        var i;
        for (i =0;i<10;i++){
            arr[i] =function(){
                return i;
            }
        }
        console.log(arr[5]());
    
        var arr = [];
    
        for (let i =0;i<10;i++){
            arr[i] =function(){
                return i;
            }
        }
        ////结果5
        console.log(arr[5]());
    
        //作用2:不全污染全局变量
        let RegExp =10;
        console.log(RegExp);
        console.log(window.RegExp);
    

      

  • 相关阅读:
    hbuilder中如何使用egit上传项目
    网络攻防第二周学习笔记
    sqlserver两表关联的更新
    ISAPI_rewrite中文手册
    Unity中C#单例模式使用总结
    Window Live Writer Test
    Spring Cloud 服务注册与发现(Eureka 找到了!找到了! 嘻嘻)
    Spring Cloud 服务消费与负载均衡(feign)
    Spring Cloud 服务消费与负载均衡(Rest + Ribbon )
    列表的响应式排版
  • 原文地址:https://www.cnblogs.com/lixiang1013/p/13584605.html
Copyright © 2011-2022 走看看