__proto__和prototype

Posted 笛儿前端分享

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了__proto__和prototype相关的知识,希望对你有一定的参考价值。

__proto__(隐式原型)与prototype(显式原型)

  • 显式原型 explicit prototype property:

每一个函数在创建之后都会拥有一个名为prototype的属性,这个属性指向函数的原型对象。

javascript中任意对象都有一个内置属性[[prototype]],在ES5之前没有标准的方法访问这个内置属性,但是大多数浏览器都支持通过__proto__来访问

隐式原型指向创建这个对象的函数(constructor)的prototype

显式原型的作用:用来实现基于原型的继承与属性的共享

隐式原型的作用:构成原型链,同样用于实现基于原型的继承。举个例子,当我们访问obj这个对象中的x属性时,如果在obj中找不到,那么就会沿着__proto__依次查找。

https://www.zhihu.com/question/34183746

以上是关于__proto__和prototype的主要内容,如果未能解决你的问题,请参考以下文章

对象上的__proto__ 指向

prototype和__proto__区别

231 对象原型 __proto__

__proto__和prototype

JS的prototype和__proto__constructor

prototype和_proto_区别