简单了解:作用域,作用域链。

·  阅读 256

prototype就是原型(prototype是key,它的value是对象,这个对象叫原型对象)

__proto__称为隐式原型。前后有两个下划线。它对外是隐藏的,我们在程序开发过程,不会直接使用它。( __ :私有的意思)

每一个函数都有一个prototype属性

每个函数,都会有很多属性(因为函数也是对象,而对象是属性的集合),其中一定有一个prototype属性。这个属性的名字是:prototype 它的值是一个对象。

construct

一个原型对象,是一个对象,对象中有很多的属性和方法,肯定有一个叫 constructor。constructor指向这个函数本身。

_proto _

每一个对象,都有一个__proto__属性。特别的,对于函数而言,每一个函数都会有一个prototype和一个__proto__属性。并且对象的__proto__属性指向创建这个对象的函数的prototype。

 / // 对象的__proto__属性 指向 创建这个对象的函数的prototype
// let obj = {name:"wangcai"}  // 通过Object创建
// // console.log(obj)
// console.log(obj.__proto__ == Object.prototype)  // true
()
复制代码

构造器

构造器Objbect ,Array,Function,Boolean,String ,Number

原型链

定义:如果访问一个对象的属性时,先在这个对象自己的属性中去找,如果找不到,则沿着__proto__这个属性向中找,如果__proto__这个对象中还是没有找到,就在__proto__对象的__proto__属性中去找,依次下去,这就是原型链。

指向图解

分类:
阅读
标签:
分类:
阅读
标签:
收藏成功!
已添加到「」, 点击更改