1. ES5中的近类结构
ES5中创建类的方法:
新建一个构造函数,定义一个方法并且赋值给构造函数的原型。
2. ES6中的class
与ES5中使用构造函数不同的是,私有属性是实例中的属性,不会出现在原型上。
类声明和函数声明的区别和特点:
1、函数声明可以被提升,类声明不能提升(与let声明类似)。
2、类声明中的代码自动强行运行在严格模式下。
3、类中的所有方法都是不可枚举的,而自定义类型中,可以通过Object.defineProperty()手工指定不可枚举属性。
4、每个类都有一个[[construct]]的方法。
5、只能使用new来调用类的构造函数。
6、不能在类中修改类名。
类表达式
类有声明式和表达式两种表现形式:
3. 类的应用场景
JavaScript函数是一等公民,类也设计成一等公民。
(1) 类作为参数传入函数
(2) 通过立即执行函数,调用类构造函数创建单例
用new调用类的表达式,接着()调用表达式
4. 类的静态成员
静态成员是指在方法名或属性名前面加上static关键字,和普通方法不一样的是,static修饰的方法不能在实例中访问,只能用类名直接访问。
5. 继承与派生
比如自定义react组件要继承React.Component
A是派生类,在派生类中使用构造方法必须使用super.
关于super使用的几点要求:
- 1、只可以在派生类中使用super。派生类是指继承自其它类的新类。
- 2、在构造函数中访问this之前要调用super(),负责初始化this。
(1)在继承的类中重写父类方法
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!