前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >prototype初识

prototype初识

作者头像
天天_哥
发布2018-09-29 13:52:37
3550
发布2018-09-29 13:52:37
举报
文章被收录于专栏:天天
第一部分:原理

image.png

image.png

image.png

image.png

image.png

第二部分: isinstance of B的判断原理
代码语言:javascript
复制
沿着A的__proto__这条线来找,同时沿着B的prototype这条线来找,如果两条线能找到同一个引用,
即同一个对象,那么就返回true。如果找到终点还未重合,则返回false。

image.png

内容摘自:
[详情查阅]http://www.cnblogs.com/wangfupeng1988/p/3978131.html
第三部分:代码加深理解
代码语言:javascript
复制
eg:
    function fn(){
        console.log("123")
    }
    function Person(name,age){
        this.name =name;
        this.age=age;
        this.say = function(){
            console.log("我是"+this.name)
        }
    }
    var one = new Person("张三",26);
    var zhangsan = {"name":"张三","height":185};
    //每个函数都有一个prototype属性,prototype属性是一个对象,(属性的集合)
    console.log(fn.prototype.constructor===fn);//true  fn.prototype属性是fn的原型属性的集合。包括constructor的属性
    console.log(Person.prototype.constructor ===Person);//true
    console.log(Person.__proto__ ===Function.prototype);//true Person是一个函数,同样也是一个对象,它是由Function创建,

    console.log(fn.__proto__===Function.prototype);// true  fn有Function创建 new Function();
    console.log(Object.__proto__===Function.prototype);// true  Object也是有Function创建
    console.log(one.__proto__===Person.prototype);//true  对象one是由函数Person创建
    console.log(zhangsan.__proto__===Object.prototype);//true 对象"zhangsan"是由Object创建
    //结论:每一个对象都有一个__proto__属性,指向构建这个对象的函数的prototype,
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.10.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一部分:原理
    • 第二部分: isinstance of B的判断原理
      • 内容摘自:
        • [详情查阅]http://www.cnblogs.com/wangfupeng1988/p/3978131.html
      • 第三部分:代码加深理解
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档