JavaScript_proto_和prototype到底是什么玩意

今天去逛了贴吧,发现有人在问instanceof 的类型比较,所以比较贴心的去解释了一下,instanceof是比较左侧的_proto_和右侧的prototype是否相同,当然因为js所有的对象啊,方法,都会有_proto_这个属性,所以会一直循环下去,直到摸到顶层,也就是object.prototype._proto_结束。
结果呢,吧友表示不能理解,那

_proto_prototype到底有什么区别啊?是个什么东西啊?

在这里我头也比较大啊,小学语文没学好,所以组织能力比较差劲,所以尽量的咱用代码来解释吧。

function too() {this.t = 0;
}
var t = new too()
console.log(t._proto_)
console.log(too.prototype)


看了输出以后,都能惊奇的发现,输出的是同一个东西,一个是万物皆有的proto,还有一个就是自身的构造,

也就是说,_proto_这个属性的意思是,去指向自己的父亲创造自己时用的构造方法。

prototype这个属性的意思就是,我自己生孩子(创建对象)的时候用的构造方法。

看起来有点绕来绕去的,其实说白了就是一个找爸爸怎么创建自己,一个找自己怎么创建儿子,两种东西,所以_proto_这属性能一直往上摸上去,找自己的爸爸的爸爸,爸爸的爸爸的爸爸。
那么我们来简单的试验一下,按照刚才的代码,我用function去创造了too这个对象,而用too的too()这个构造方法,去创建了t这个对象,所以关系是function生了too,too生了t,然后我们在用instanceof去比较一下三者的关系。

console.log(t instanceof too)  //true
console.log(too instanceof Function) //true
console.log(t instanceof Function) //true

JavaScript_proto_和prototype到底是什么玩意相关推荐

  1. 架构师到底是啥玩意?

    前天晚上下班回家,和同事一起在地铁上聊起了架构师的问题.有一点自己的愚见,可以分享一下. 架构师到底是啥玩意?不管是在校科班学生,还是刚入行的菜鸟,或者已经有相对工作经验的朋友,只要一听到架构师这个称 ...

  2. matlab中prbs怎么用,答题 | PRBS码到底是啥玩意?

    原标题:答题 | PRBS码到底是啥玩意? [文:黄刚] 问 答 如果是prbs7.prbs15呢?它们循环一次需要多少个bit呢?那--拓展到prbsN呢? 咳咳,这个问题从我发出去开始就知道难不倒 ...

  3. 时钟系统:CPU为啥需要时钟;此时钟非彼时钟,时钟到底是啥玩意

    CPU为啥需要时钟:此时钟非彼时钟,时钟到底是啥玩意 讨论问题: 2.2 时钟的本质 讨论问题: 1.时钟是什么 2. 为什么需要时钟 2.2 时钟的本质 不知道你有没有过类似的疑惑:CPU不是供电就 ...

  4. __proto__ 和 prototype 到底有什么区别

    以前在日常工作中使用 JS 时只是粗浅的知道在原型链中会存在 __proto__ 和 prototype 这2个概念,但真正要回答这2个属性的具体作用以及之间的关系和差异时又总觉得不知道从哪里说起,今 ...

  5. 快应用、快服务、服务直达…这些到底是啥玩意

      4月8日华为终于在国内线上发布会发布了P40及P40pro,但是与此同时也发布了华为智慧屏X65, 华为音响Sound X,支持双扬声器.无线充电.通话降噪的 HUAWEI Eyewear 眼镜, ...

  6. RESTful到底是什么玩意??

    0. REST不是"rest"这个单词,而是几个单词缩写.: 1. REST描述的是在网络中client和server的一种交互形式:REST本身不实用,实用的是如何设计 REST ...

  7. 拯救跟我一样的初学者:XML到底是什么玩意,用能让初学者听得懂的话

    我也是个初学者,看视频在XML里添加来添加去都不知道干嘛用就来百度结果TM的一堆各种名词,根本不是给我这个初学者科普的,但是一堆沙子里也有黄金,我就把我觉得好的解释放在下面. **解释1:** 来源: ...

  8. 「长文预警」云计算、人工智能、大数据到底是啥玩意?

    作者:刘超的通俗云计算 我今天要讲这三个话题,一个是云计算,一个大数据,一个人工智能,我为什么要讲这三个东西呢?因为这三个东西现在非常非常的火,它们之间好像互相有关系,一般谈云计算的时候也会提到大数据 ...

  9. 运筹学到底是啥玩意?

    哈喽,各位大佬好,我是小明哥,初次实际遇到这个概念是在某次面试中,面试官说他们需要运筹学的相关人员来解决家居布置的问题(到达最优,但我不知道怎么才算最优,不知道label,所以有点懵逼),当时我对陌生 ...

最新文章

  1. this.$modal.confirm 自定义按钮关闭_Excel迫使人类基因重命名?用VBA给科学家们支一招!—— 怎样快速定制工具栏按钮...
  2. 九度OJ 1168:字符串的查找删除 (查找)
  3. SAP云平台上的SSO Principal Propagation设置
  4. Python Flask服务同时接收单个、多个上传的文件
  5. 钉钉辟谣“老师能打开学生摄像头”;HTC 关闭官方社区;​Node.js 安全版本发布 | 极客头条...
  6. Makefile:include和-include
  7. 委托(delegate)的三种调用方式:同步调用,异步调用,异步回调
  8. Ctfmon.exe是什么进程?
  9. 免费批量化音频切割软件 AutoVoiceCut
  10. sshsecureshell登录Ubuntu出错,server responded “algorithm negotiation failed”
  11. 质因数分解法、短除法、辗转相除法、更相减损法求最大公约数
  12. 什么才是高标准要求自己?
  13. (深度学习评估指标)——MS COCO detection evaluation metrics
  14. 云原生 | 混沌工程工具 ChaosBlade Operator Pod 篇(文末赠书)
  15. STM32开发---F103系统时钟配置
  16. 空间中两随机向量间夹角的概率密度分布(越高维,越趋向于正交)
  17. 区间类动态规划(dp)
  18. 论文查重时图片会不会被检测?
  19. 图灵奖得主长文报告:是什么开启了计算机架构的新黄金十年?
  20. 杰奇1.7用php53,杰奇1.7小说系统多模版一库教程

热门文章

  1. LINQ快速开发设计最佳实践(二) 构建Model模型
  2. 应用于新型汽车的多种TDK传感器
  3. 如何从零开始一个uniapp项目
  4. 20 OPENVINO intermediate course 12
  5. apicloud开发混合app实战二手车项目
  6. Haxe手册摘要 一. 类型
  7. 液晶显示器屏幕怎么清洗而不损害屏幕?
  8. 图解GNN:A Gentle Introduction to Graph Neural Networks
  9. java elgamal_ElGamal体制
  10. P4398 [JSOI2008]Blue Mary的战役地图