zoukankan      html  css  js  c++  java
  • js原型链的理解

    js的原型链涉及到函数function和对象obj,在涉及到原型链必须先清楚他们之间的关系。

    1、函数必然有prototype和_proto_两个属性,所有的函数(包括自定义函数)都是Function实例的对象;

    2、对象必然有_proto_属性,但不一定有prototype;实例的对象通过_proto_属性连接到构造函数的prototype属性上。而原型链就是从这两者的关系开始一层一层往下找的关系;

    3、Function.prototype通过_proto_属性找到了Object.prototype,该对象的_proto_再往下找就是null了,所以不难得出结论,Function其实是Object的实例对象;

    4、所谓原型链就是找原型的一种行为方式,原型链的核心其实就只有一个:属性共享和独立的控制,当你的对象实例需要独立的属性,所有做法的本质都是在对象实例里面创建属性。

    5、由始至终引用类型Object只有向外指的箭头,而没有指入的箭头,原因就是“万物皆对象”,任何对象都是属于object的实例,所以最终_proto_都会指向Object的prototype中,再通过_proto_往下就为null;

  • 相关阅读:
    温故而知新汇总贴
    温故而知新—heap
    温故而知新--hashtable
    温故而知新-set
    温故而知新——map
    温故而知新----stack
    找工作的时候我们改准备些什么
    js瀑布流布局
    js小游戏---智力游戏
    原生js完成拼图小游戏
  • 原文地址:https://www.cnblogs.com/axingya/p/13629309.html
Copyright © 2011-2022 走看看