js原型链的理解(浅谈JS的原型和原型链)
类别:编程学习 浏览量:112
时间:2022-01-24 00:39:49 js原型链的理解
浅谈JS的原型和原型链目录
- 1.原型prototype
- 2.原型指针:__proto__
- 总结
javascript中所有函数都具有这个属性,所有具有prototype属性的对象都是一个函数。prototype的作用是向对象添加一个方法/属性。
function persion(){} persion.prototype.name = "xiaoming" console.log(persion.prototype)//{name: "xiaoming", constructor: ƒ}
如果将上面persion函数生成一个实例对象Persion1,用prototype为他添加一个属性写法如下:
function persion(){} persion.prototype.name = "xiaoming" let Persion1 = new persion(); console.log(Persion1) //控制台结果如下
打印实例Persion1的结果如下:
从上面打印的结果来看,Persion1.__proto__.name = persion.prototype.name,也就是实例对象的__proto__属性等于其构造函数的prototype。
理解了上面之后,原型链就很好理解了,我们可以通过Persion1.__proto__.__proto__直接查找到Object的方法。这么说可能不太直观,上代码:
function persion(){} persion.prototype.name = "xiaoming" let Persion1 = new persion(); console.log(Persion1.__proto__.__proto__.toString) //通过原型链查找到的Object的toString方法 console.log(Object.prototype.toString)//Object上的toString方法
控制台打印结果如下,这样就印证原型链逐级查找的特性。
总结任何对象都可以通过原型链,也就是__proto__属性,逐级查找,最终的重点都是Object,必经之路是function。他们的关系像是用一条链子串起来一样,我们把这种关系叫做原型链。
以上就是浅谈JS的原型和原型链的详细内容,更多关于JS的原型和原型链的资料请关注开心学习网其它相关文章!
您可能感兴趣
- 火狐查看json数据
- jsonkeyvalue怎么取(替换json对象中的key最佳方案)
- pandasjson格式(对pandas处理json数据的方法详解)
- extjs中Toolbar工具栏
- extjs accordion折叠布局
- extjs多选下拉框
- 微信发送镭射效果代码(JS实现微信"炸屎"大作战功能)
- vue.js入门教学第15讲(Vue.js 使用AntV X6的示例步骤)
- vue.js开发网站的关键技术(Vue.js项目前端多语言方案的思路与实践)
- js防抖用法(JavaScript的防抖和节流案例)
- python编写程序读写数据库(详解js文件通过python访问数据库方法)
- js时间日期处理
- vue前台解析pdf文件流(Vue实现在线预览pdf文件功能利用pdf.js/iframe/embed)
- js中Document
- react组件分析(react-diagram 序列化Json解读案例分析)
- vue 富文本图片上传(vue.js云存储实现图片上传功能)
- 为什么现在社会越来越卷了(现在社会为什么发展那么快呢)
- 直播带货能赚到很多钱吗(直播带货能赚到很多钱吗现在)
- 做网红真的很能赚钱吗(做网红真的很能赚钱吗)
- 10句英语常用(英语常用900句)
- 爱情能当饭吃吗(爱情能当饭吃吗说说)
- 白T恤穿法(白t恤)
热门推荐
- php框架初始化教程学习(PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解)
- dedecms友情链接设置(dedecms友情链接中去掉织梦链投放修改方法)
- python虚拟环境和包使用教程(在win10和linux上分别安装Python虚拟环境的方法步骤)
- docker目录映射不起作用(关于dockerfile build过程中报/bin/sh: pip: command not found的解决方法)
- nginx流媒体服务搭建与应用(用nginx+FastDFS一步步搭建文件管理系统)
- 数据类型typescript知多少(一文了解TypeScript数据类型)
- python发送微信消息脚本(python实现给微信指定好友定时发送消息)
- win7 ftp服务器怎么搭建(win7下利用IIS搭建FTP服务器)
- 三种css选择符(浅谈css之属性及剩余的选择符)
- python代码计算一个月多少天(Python计算时间间隔精确到微妙的代码实例)