zoukankan      html  css  js  c++  java
  • JS原型链

    原型链图解

     
     
     
     
     

    1. 原型链(图解)

      * 访问一个对象的属性时,

        *先在自身属性中查找,找到返回

        *如果没有, 再沿着__proto__这条链向上查找, 找到返回

        *如果最终没找到, 返回undefined

      * 别名: 隐式原型链

      * 作用: 查找对象的属性(方法)

    2. 构造函数/原型/实体对象的关系(图解)

    3. 构造函数/原型/实体对象的关系2(图解)

    -->

     

     

     

      1. 函数的显示原型指向的对象默认是空Object实例对象(但Object不满足)

       */(自行练习)

     console.log(Fn.prototype instanceof Object) //

     console.log(Object.prototype instanceof Object) //

     console.log(Function.prototype instanceof Object) //

      /*

      2. 所有函数都是Function的实例(包含Function)

      */

     console.log(Function.__proto__===Function.prototype)

      /*

      3.Object的原型对象是原型链尽头

       */

     console.log(Object.prototype.__proto__) // null

     

     

    5:原型链的作用:查找对象的属性或者方法

    1. 读取对象的属性值时: 会自动到原型链中查找

    2. 设置对象的属性值时: 不会查找原型链, 如果当前对象中没有此属性, 直接添加此属性并设置其值

    3. 方法一般定义在原型中, 属性一般通过构造函数定义在对象本身上

      function Person(name,age) {

          this.name = name;

          this.age = age

        }

        var p1=new Person("TOM",18)//属性在原型还是在对象里面;

        console.log(p1)

    //下图所是:Person函数的显示原型是一个Object对象(默认为空)

     

       function Person(name,age) {

          this.name = name;

          this.age = age

        }

        var p1=new Person("TOM",18)//

        console.log(p1)//对象有隐式原型属性

        console.log(Person)显示原型属性

     

     
  • 相关阅读:
    angular学习一框架结构认识
    关于react上线系列问题及解决方案
    typescript学习笔记
    keepalived + glusterfs实现高可用
    nginx限制单个IP的最大连接数量限制下载速度
    初识Python.day2
    初识Python
    服务器安装到优化
    windows云服务器数据迁移
    z字形变换
  • 原文地址:https://www.cnblogs.com/love-life-insist/p/9062939.html
Copyright © 2011-2022 走看看