ES6新语法(一)

1,let和conset使用方法
// let 作用域内的变量,在本作用域内有效(相当于 var的作用)
// const是常量:一旦被赋值就不能被修改

2,数组结构赋值
    //es6之前的语法
        var arr = [1,2,3];
        console.log(arr[0]);
        console.log(arr[1]);
        .............
    
    //es6语法
        var[a,b,c]=[1,2,3]
        
        var [a,b,c] = new set({4,5,6});
        var [a=1,b=2]=[]// 输出1,1 因为3为空数组
        console.log(a);
        console.log(b);
        console.log(c);
3,对象解构赋值
    //es6之前语法
    var json ={
        a:1;
        b:2;
    };
    //es6语法
    var {a,b} = {a:1,b:4}
    var {a,b} = {a:1,b:[2,3]} //输出a:1 b:[2,3]
    console.log(a);
    console.log(b);
    
4,函数解构赋值
    //es6之前语法
        function fn([a,b]){
            console.log([a,b])
        }
    //es6语法
        function fn([a=1,b=2]={}){
            console.log([a,b]);
        }
        fn(a=5)
        
5,Class类
    //es6之前语法
    function person(name,age){
        this.name = name;
        this.age = age;
    }
    var p = new person("张三","18");
    console.log(p.name);
    console.log(p,age);
    
    //es6语法
    class person{
        say(){
            console.log("我说话了");
        }
    }
    var p = new person();
    p.say()//调用成功
    
6,类的继承
    Class person{
        constructor(name){
            this.name = name;
        }
        
        say(){
            console.log(this.name+"说话了");
        }
    }
    
    var p = new person("张三");
    p.say()//  张三说话了
    
    //继承
        class man extends person{
            super(name)//传入一个 super
        }
        var m = new man("男人");
        m.say();//男人说话了

你可能感兴趣的:(ES6新语法(一))