• 原型和原型链 —javascript面向对象高级


    原型
     1.原型有什么用:js是用原型来实现继承

     2.原型是:每一个对象都有其原型对象__proto__,这个原型对象指向构造它的构造函数的原型属性prototype.

     
    ## 一、函数和对象的关系 ##
     1.函数是对象的一种,instanceof 可以判断

     2.对象是函数创建的

    ## 二.prototype 与 __proto__ ##

     1.prototype是函数的一个属性,每一个函数都有protptype属性,这个值是一个对象,里面有一个constructor属性,指向它自己。

     2.__proto__ 每一个对象都有其原型属性__proto__,其值是一个对象,指向构造它的构造函数的prototype

    ## 三.构造函数中的属性与原型中的属性区别 ##
     1.原型中的属性,所有实例通用,一个改变,所有改变,实现继承。 实例中的属性是其私有的

     2.实例私有属性优先级比原型中的优先级高,查找时候会先查找实例的私有属性,若没有才会查找原型

    ## 四.属性查找顺序 ##

     1.访问一个属性时,会现在实例本身查找该属性,如果没有,就到其原型对象中去查找,若还是没有会去构造这个对象的构造函数中去查找,如果没有就在这个构造函数中的prototype中去找,如果还是没有就到Object对象中去找,再没有就是null   **——原型链**

     2.自定义函数本质上都是通过Object函数来创建的,所以他的__proto__指向的Object.prototype。

     3.Object.prototype的__proto__指向Null

  • 相关阅读:
    第一次迭代心得
    RDF搜索引擎——需求分析心得
    RDF搜索引擎——数据库设计心得
    RDF搜索引擎——数据库具体设计
    服务器上修改运行scala
    结对编程项目的收获与总结(支持UI背景与背景音乐的刷题器)
    取长补短——结对编程项目之队友代码分析
    团队项目——测试心得
    第一次迭代开发心得
    团队项目——需求心得
  • 原文地址:https://www.cnblogs.com/luowen075/p/6135834.html
Copyright © 2020-2023  润新知