关于原型链和继承的理解

先回顾一下 instanceof 的用法:

Function instanceof Object;  // true
[1,2,3] instanceof Array;  // true

其中的原理是什么呢?

JS 是基于原型链面向对象的语言,上述例子中的Function[1,2,3]就是基于ObjectArraynew出来的实例。在Function[1,2,3]的属性中有一个__proto__属性指向其原型的prtotype属性;该属性包括了此原型所能被继承的所有方法。
在原型的prototype属性中,有一个constructor属性自己的构造器。
回到 instanceof 上,从上叙述中既可以推断出 instanceof 的原理:

[1,2,3] instanceof Array <=> [1,2,3].__proto__.constructor === Array
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容