总结

  1. 定义类的两种方式:类声明和类表达式;
  2. 与函数不同的是:函数声明可以提升,但类定义不能;函数受函数作用域限制,而类受块作用域限制;
  3. 类的构成:包含构造函数方法、实例方法、获取函数、设置函数和静态类方法,但这些不是必需的,可以只设置一个空类;
  4. 使用 new 操作符实例化 Person类的操作等于使用 new 调用其构造函数。image.png
  5. 普通构造函数如果 不使用 new 调用,那么就会以全局的 this(通常是 window)作为内部对象。调用类构造函数时如果 忘了使用 new 则会抛出错误image.png
  6. 通过 typeof 操作符检测类标识符,表明它是一个函数image.png
  7. 与立即调用函数表达式相似,类也可以立即实例化:image.png
  8. 在类里定义的方法作为原型方法,类的内部所有定义的方法,都是不可枚举的image.pngimage.png
  9. 不能在类块中给原型添加原始值或对象作为成员数据:image.png
  10. 类定义也支持获取和设置访问器。语法与行为跟普通对象一样image.png
  11. 静态类方法在类定义中使用 static 关键字作为前缀,在静态成员中,this 引用类自身,该方法不会被实例继承,而是直接通过类来调用;image.png
  12. 迭代器与生成器方法 image.pngimage.png
  13. 类继承使用的是新语法,但背后依旧使用的是原型链image.png
  14. 在类构造函数中使用 super 可以调用父类构造函数,仅 限于类构造函数、实例方法和静态方法内部;image.pngimage.png
  15. image.png