博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js中的prototype和__proto__
阅读量:6457 次
发布时间:2019-06-23

本文共 673 字,大约阅读时间需要 2 分钟。

hot3.png

  1. prototype是函数的属性,每个函数都拥有一个prototype属性;__proto__是一个对象拥有的内置属性,是new一个实例时动态添加的属性,也是js内部寻找原型链的属性。

  2. prototype属性拥有一个constructor属性和一个__proto__属性,默认情况下constructor指向构造函数自身即fun.prototype.constructor == fun;对于普通对象,__proto__是该对象的原型链即fun.prototype,对于函数,__proto__是fun构造器即Function的prototype(Funtion.prototype)

  3. 对象在原型链查找属性时,是沿着__proto__查找的;函数的__proto__是Function.prototype即fun.prototype.constructor.__proto__,而普通对象的__proto__就是obj.__proto__即fun.prototype

  4. function Animal () {}Function.prototype.say = function () {   alert("function");}Object.prototype.say = function () {   alert("object")}Animal.say(); //functionAnimal.prototype.say();//object

转载于:https://my.oschina.net/u/1992917/blog/611723

你可能感兴趣的文章
对比MICROSOFT的SKYDRIVE测试免费同步方案和公司FTP方案
查看>>
操作系统随机密码,定时改密码
查看>>
【Swift】iOS开发历险记(二)
查看>>
错误 1 Files 的值“<<<<<<< .mine”无效。路径中具有非法字符。
查看>>
利用shell脚本提高效率(切换用户不需要输入密码)
查看>>
IDEA 常用快捷键最佳实践
查看>>
session,application,cookie,viewstate,Querystring等的作用域
查看>>
实现类似于CISCO路由器的命令行帮助界面
查看>>
400 错误
查看>>
Otter-入门篇1(阿里开源项目Otter介绍)
查看>>
Linux 高级Socket编程
查看>>
关于Excel导入的问题记录
查看>>
java一些基础问题(听说是java应聘者老被问的问题!)
查看>>
一道JavaScript面试题
查看>>
java分布式电子商务云平台b2b b2c o2o需要准备哪些技术??
查看>>
centos6中安装新版 Elasticsearch 7.x
查看>>
跟着小白学zookeeper: 分布式锁的实现
查看>>
2天学会python,小白慎点
查看>>
大型分布式系统现场,阿里大牛带你实战分布式系统
查看>>
Android Q Labs| 折叠屏设备适配
查看>>