大家好,我是IT修真院深圳分院第01期学员,一枚正直善良的web程序员。
今天给大家分享一下,修真院官网 JS任务中可能会使用到的知识点:
继承有几种方式,分别是什么?想要实现继承可以使用什么方法?
1.背景介绍
起源:Simula67语言
对象:“无序属性的结合,其属性值可以包含基本值、对象或者函数”。
面向对象编程(OOP):核心思想是将各种复杂关系,抽象成一个个对象,然后由对象之间的分工合作,完成对真实世界的模拟。
2.知识剖析
JavaScript语言的对象体系,不是基于“类”,而是基于构造函数(constructor)和原型(prototype)
原型对象:只要创建一个新函数,就会根据特定的规则为该函数创建一个prototype属性指向其原型对象,默认情况下原型对象会自动获得一个constructor属性,该属性包含一个指向prototype属性所在函数的指针
构造函数:本身是一个函数,出于创建特定类型新对象的目的而定义的,内部使用this变量,需要和new配合使用来创建实例,this变量会绑定在实例对象上。
封装模式:将“属性”和“方法”封装成对象的模式,即创建对象的方式
继承概念
许多OO语言都支持两种继承方式:接口继承和实现继承,接口继承只继承方法签名,实现继承则继承实际的方法
3.常见问题
js如何实现继承?
4.解决方案
5.扩展思考
ES6中JavaScript拥有类的概念了,参考java等语言思考JavaScript如何使用类来简化封装、继承。
6.参考文献
参考:阮一峰的网络日志
参考:JavaScript高级程序设计
7.更多讨论
Q:继承一般用到什么地方
A:通常在一般的项目里不需要,因为应用简单,但你要用纯js做一些复杂的工具或框架系统就要用到了,比如webgis、或者js框架如jquery、angular、vue什么的,不然一个几千行代码的框架不用继承得写几万行,甚至还无法维护
详见视频:
继承有几种方式,分别是什么?想要实现继承可以使用什么方法?_腾讯视频
网友评论