JavaScript 类详解
类是es6新增的语法糖, 其底层实现仍然是原型链和构造函数
类是一种特殊的函数, 可以用typeof操作符检测
定义
class Person{}
// 使用类表达式定义
const Animal = class{};
注意的点
类的声明不能提升, 和函数可以提升不一样, 所谓提升就是可以先用后定义
类的作用域是块{ }
构成
JavaScript 中的类可以为空
也可以包含构造函数方法, 实例方法, 获取函数, 设置函数, 静态方法
class Person{} //is right
类构造函数
类构造函数是写在类内部的一个叫constructor的函数, 使用new关键字调用
class Person{
constructor(){}
}
与普通构造函数区别
都使用new关键字调用
类构造函数不使用new关键字调用会报错, 而普通构造函数不会, 但是其this指向全局对象
实例化
所谓实例化就是使用new 类名, 该操作会调用类的构造函数
class Person{
constructor(){
console.log("is Person constr");
}
}
let p1 = new Person();
console.log(p1);