Class
ES2015
-
原理:类本身指向构造函数,所有方法都定义在
prototype上,可以看做构造函数的另一中写法(Class === Class.prototype.construtor) -
方法和关键字
- constructor:构造函数,new命令生成实例时自动调用
- extends:继承父类
- super:新建父类的
this - static:定义静态方法
- get:取值函数,拦截属性的取值行为
- set:存值函数,拦截属性的存值行为
-
属性
- proto:构造函数的继承(总是指向父类),实例的属性
-
静态属性:定义类完成后赋值属性,该属性
不会被实例继承,只能通过类来调用 -
静态方法:使用
static定义方法,该方法不会被实例继承,只能通过类来调用(方法中的this指向类,而不是实例) -
其他定义
- 实例:new出来的
- 构造器(构造函数):方法 || class
-
this指向
类的方法内部如果含有this,它默认指向实例箭头函数的this: 定义时所在的对象
将这个方法提取出来单独使用,this会指向该方法运行时所在的环境(由于 class 内部是严格模式,所以 this 实际指向的是undefined)
静态方法:不会被实例继承