Your browser does not support the Canvas element.

ES6常用语法

1、变量的定义

  1.1、let 定义的变量

    1、没有变量提升。

      即如果打印变量前,没有先定义这个变量,就会报错。

      

      

      ES5中 var定义的变量,有变量提升。先打印,后定义只会报undefined 

    2、let定义的变量:有全局作用域,函数作用域和块级作用域{  }。

      var定义的变量,没有块级作用域。

      

      如果在块级作用域里边分别用let 和 var 定义了变量,在全局打印这个变量,let定义的变量就会报错。

      

      在作用域中打印

      

      

    3、let定义的变量:不能够重复定义。

      var定义的变量可以重复定义。

      

      

      

      

  1.2、const定义的变量

      除了let定义变量的规则之外,还有两个规则

      1、const定义变量之后不能修改

      

      

      而var 和 let 定义的变量可以修改

      2、定义变量的时候必须赋值。

      

      

2、模板字符串

  2.1、用反引号进行字符串的拼接

    

    

  2.2、用${}来存储变量

    ${user}就能够获取变量的值

3、数据的解构和赋值

  3.1、数组的解构和赋值

    

    

  3.2、对象的解构和赋值

    

    

 4、函数的扩展

  4.1、默认值参数

    

    

  4.2、箭头函数

    箭头函数的this是指向定义时的作用域的,即谁定义的箭头函数,这个this就是谁,而不是谁调用就是谁。

    

    

 5、类

  5.1、用class关键字定义一个类,和python 中定义类是一样的

    

class A{
        constructor(username,age){                # class 中必须要有constructor方法,如 
            this.username = username;             # 果没有需要通过constructor(){}来初
            this.age = age;                               # 始化一个,就和python中的__init__方
        }                                                       # 法一样。
        info(){
        console.log(this.username,this.age)
        }
    }
    class B extends A{                                  # extends 是用来继承父类的
        constructor(username,age){
            super();
            this.username=username;
            this.age = age;

        }
    }
    let c = new B('liu',26);                        # 实例化对象的时候必须用new +类名 来
    c.info()                                              # 实例化,不然会报错                                          

6、单体函数

  6.1  单体函数的this指向调用者

    

    

    如果用箭头函数

    

    

 

posted @ 2018-11-07 18:10  一根小菜  阅读(196)  评论(0编辑  收藏  举报
Your browser does not support the Canvas element.