Java育儿园约架专栏

ES5/ES6规范简介(新语法)

2019-09-26  本文已影响0人  磨陀货_

IDEA修改支持ES6语法


ES语法

新建包---HTML
全局变量
<body>
    <script>
        for(var i = 0; i<10; i++){
            console.log(i);
        }
        console.log("嘿嘿"+ i);
    </script>
</body>
页面F12
let块级变量(方法外获取不到。。相当于局部变量)
<body>
    <script>
        for(let i = 0; i<10; i++){
            console.log(i);
        }
        console.log("嘿哈"+ i);
    </script>
</body>
未捕获引用错误:未定义i
定义常量

解构表达式

数组解构
    <script>
        <!--前段好处就是不用向后端一样,分int。string。很方便-->
        var arr = ["马岱",16,true];
        const[a,b,c] = arr;
        console.log(a,b,c);
    </script>
<!--就算填进去两个,他是按照顺序装 -->
        const[d,e] = arr;
        console.log(d,e);

解构对象
<body>
    <script>
        let person={
            "name":"司马昭",
            "age":66
        }      
        let{name,age}=person
        console.log(name,age);
    </script>
</body>

箭头函数

<body>
    <script>
        var add = function(){
            console.log("add我被调用了");
        }
        var app =()=>{
            console.log("app方法被调用")
        }
        add();
        app();
    </script>
</body>

<body>
    <script>
        var person = {
            name : "诸葛亮",
            age : 22,
            test : function(food){
                console.log(this.name + "喜欢" + food)
            },
        }
        person.test("小妹妹");
    </script>
</body>
<body>
    <script>
        var person = {
            name : "诸葛亮",
            age : 22,
            //老写法
            test : function(food){
                console.log(this.name + "喜欢" + food)
            },
            //新写法-----这里用this是获取不到name的,要用对象person
            test2:food=>console.log(person.name + "依旧喜欢" + food),
            //新写法-----这种简写就可以this
            test3(food){console.log(this.name + "只要" + food)}
        }
        person.test("小妹妹");
        person.test2("小妹妹");
        person.test3("小妹妹");
    </script>
</body>

结合使用

<body>
    <script>
        let student = {
            name : "周瑜"
        }
        //旧骚方
        function test(sos){
            console.log(sos.name);
        }
        test(student);
        //新骚方
        var {name} = student;
        var test2 = ({name})=>console.log(name);
        test2(student);
    </script>
</body>

Promise对象

<body>
    <script>
        // 成功回调
        var success = (num)=>console.log("异步调用success"+success);
        // 失败回调
        var fail = (num)=>console.log("异步调用fail"+fail);
        var promise = new Promise(function (a,b){
            let number = Math.random();
            if(number>=0.5){
                a(number);
            }else{
                b(number);
            }
        });
        promise.then(success).catch(fail);
    </script>
</body>

模块化


上一篇 下一篇

猜你喜欢

热点阅读