原型和原型链

instanceof是干嘛的?

通常用于判断一个 实例 是否属于某种类型

let zlx = new Student('zlx')

zlx instanceof Object >> true Object是基类
zlx instanceof People >> true
zlx instanceof Student >> true


instanceof 判断 类 是否在实例原型链中

原型

类都(Class)有自己显示的原型:prototype
实例(对象)都有自己的隐式原型:_proto_

关系
obj._proto_ ==> Class.prototype
obj.constructor.prototype ==> Class.prototype

执行规则
现在自身寻找,找不到再去_proto_寻找

原型是所有实例共有的,因此修改原型影响的是基于该原型的所有实例

原型也是实例(对象)

原型链

zlx._proto_ ==> Student.prototype
Student.Pototype._proto_ ==> People.prototype

原型链的终点是Object.prototype._proto__ === null
原型链.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容