5阶段day01原型链理解

本文深入探讨JavaScript中的函数对象、原型对象和实例对象之间的关系。重点讲解Function如何创建各种内置函数对象,以及对象间的原型链构造。内容涵盖__proto__、prototype和constructor属性的作用,以及对象成员访问机制。
摘要由CSDN通过智能技术生成

1,源头: Function函数对象自动产生的第一个对象
2, 除Function函数对象之外,所有的函数对象都是由Function函数对象创建的。
3, Function会自动创建出很多函数对象出来
4,Function自动创建的第一个函数对象是 Object函数对象
   Function还会自动创建出的函数对象有:Object、Window、Date等一系列的内置函数对象
   我们自己写的函数对象也是由Function创建的。
5,所有的函数对象都一定有一个对应的原型对象, 所有的原型对象都是被Object函数对象创建出来的。
6, 所有的函数对象中都有一个名字叫prototype的引用类型变量,该引用类型变量是函数对象的成员,
    该引用类型变量的值是对应的原型对象的引用值,即prototype指向原型对象
7, 所有的原型对象中都有一个名为constructor引用类型变量,该引用类型变量是原型对象的成员,
    该引用类型变量的值是对应的函数对象的引用值,即constructor指向函数对象
8, 实例对象是被对应的函数对象创建的。 
9, 所有对象中都有一个名为__proto__引用类型变量,该引用类型变量是对象的成员,
10, 对象中的__proto__的值是哪个对象的引用值?即指向哪个对象?分三种情况:
(1)Function函数对象中__proto__指向Function原型对象。
(2)Object原型对象中__proto__值为null
(3)除Function函数对象和Object原型对象之外。对象中的__proto__指向 
    谁创建了__protot__所属的对象,就指向谁的原型。
11,对象访问成员的过程:
    (1)当前对象中如果有该成员就该到该成员,访问结束。
    (2)当前对象中如果没有该成员,则到__proto__指向的对象中找成员,找到就结束。
        如果还是没有找到,又通过__proto__指向的对象中去找。
    


一个对象中如果有prototype,则该对象一定是函数对象,如果对象为函数对象,则其中一定有prototype
一个对象中如果有constructor,则该对象一定是原型对象,如果对象为原型对象,则其中一定有constructo
Math是实例对象
所有的原型对象都是由Object函数对象创建的。
new 出的对象是由函数对象创建的。
所有的对象中都自带属性__proto__,__proto__指向一个对象
Object原型对象中__proto__特殊,它的值为null
Function函数对象中__proto__特列,它指向Function原型对象。
所有的函数对象中都有prototype属性,原型对象和new 出来的对象中没有
prototype总是指向对应的原型对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值