原型链的理解_javascript之快速理解(原型链)
希望通过比较通俗易懂的讲解和简短的文字,让大家能快速理解什么是原型链,如果有不对的地方也请各位大佬快速纠正,一起共勉,使我们初学者快速进阶!
话不多说,我们切入正题,按着我的步骤一步一步往下看,或许你会有一定的了解。
1.在javaScript中,我们知道对于一个对象我们用Object表示,而函数用Function表示。在我们学习一些资料的时候,有时会出现__proto__和prototype两个有点不易理解的属性,我在这里告诉大家要区分[对于__proto__是对象或者实例(new出来的)特有的属性,而prototype是Function特有的]。
2.那什么是原型链呢?就是比如一个对象有__proto__的属性,他会指向对象的原型,对象的原型又是对象的话,那他又有__proto__,然后他又会向上去找对应的原型,直到找到Object对象的原型的时候,就结束了,整个一条感觉链子一样的东西,我们称他为原型链。
3.那可能你要问了prototype是干嘛的?他是实例的构造函数特有的也指向对象的原型,然后也是通过一步一步往上寻找,直到object的原型为止。
4.这东西有什么用呢?
我们在用继承的时候就会用到,还有一些设计模式中也会提到,具体大家可以搜下度娘,这里就不一一陈述了。
配个图用于理解
最后感谢大家的阅读,也希望大家能一起探索前端的未知。
原型链的理解_javascript之快速理解(原型链)相关推荐
- 初步了解区块链技术落地——FISCO BCOS 快速搭建区块链
区块链端口 p2p_port: 节点通信端口. channel_port: SDK 通知协议交换端口,使用的 SSL. jsonrpc_port: http接口包含的此协议,网络明文. 官方教程 ht ...
- 快速了解区块链六大特点
随着区块链技术的不断发展革新以及国家政策的不断支持,区块链技术成为目前头部企业都在积极发展布局区块链技术应用.区块链通过加密算法.点对点网络.共识算法等技术,大大减少了交易的中间环节以及费用和复杂度. ...
- JavaScript原型彻底理解2---继承中的原型链
一.继承的概念 继承是所有的面向对象的语言最重要的特征之一.大部分的oop语言的都支持两种继承:接口继承和实现继承.比如基于类的编程语言Java,对这两种继承都支持.从接口继承抽象方法 (只有方法签名 ...
- JavaScript面向对象——深入理解默认的继承方式原型链
描述: 正如我们所了解,JavaScript中的每个函数中都有一个指向某一对象的prototype属性.该函数被new操作符调用时会创建并返回一个对象,并且该对象中会有一个指向其原型对象的秘密链接,通 ...
- BlockChain:《Blockchain Gate》听课笔记——区块链的共识机制—简介、理解、畅谈
BlockChain:<Blockchain Gate>听课笔记--区块链的共识机制-简介.理解.畅谈 以下资源为各种渠道的网络收集和个人总结 目录 区块链--比特币中的共识机制 现阶段区 ...
- 三分钟快速理解javascript内存管理
javascript中具有垃圾自动回收机制(Garbage Collection),也就是执行环境会负责管理代码执行过程中使用的内存,在开发过程中就可以不考虑内存的分配,以及无用内存释放的问题.但是触 ...
- 深入理解Javascript中构造函数和原型对象的区别
在 Javascript中prototype属性的详解 这篇文章中,详细介绍了构造函数的缺点以及原型(prototype),原型链(prototype chain),构造函数(constructor) ...
- SpringMVC:学习笔记(1)——理解MVC及快速入门
SprigMVC-理解MVC及快速入门 说明: 传统MVC-->JSPModel2-->Front Controller + Application Controller + Page C ...
- 英语前后缀大全 - 快速理解英语单词
作为程序员离不开和英语单词打交道,而基础弱的人面对庞大的单词量只会望而却步.收集了大量英语前后缀,用以帮助快速理解英语单词! 前缀 一. 表示否定的前缀 dis-加在名词.形容词,动词之前. disa ...
最新文章
- 无法想mysql进行插入_mysql 无法插入中文
- NK3C程序资源占用分析
- Cloudstreams: 云间整合的下一个挑战
- 视觉中国、IC photo被责令暂停服务全面整改
- 容器大小_C++复习篇(7)序列式容器vector
- pyspark 条件_删除pyspark中特定条件下的特定行
- django在linux一直跑
- 查找算法之六 哈希查找(C++版本)
- QQ音频文件服务器,unlock-music:支持解密网易云/QQ音乐的加密文件和ID3信息补全...
- 嵌入式开发Verilog教程(三)——Verilog HDL基本语法汇总(上)
- ps中基色 混合色 结果色是什么
- 从零开始学JavaScript——基础篇
- 新年贺卡php,幼儿新年贺卡内容 元旦贺卡图片手工制作
- 关于FS4412的ARM开发环境搭建并点亮LED灯
- MogileFS部署流程
- MongoDB数据迁移之迁移工具Kettle
- 通过VM虚拟机安装linux系统(centos版本)
- 多晴转云h_多晴转云htxt百度云
- 计算机技术翻译工作,中文翻译成英文- 学习及工作经历2004年4月 中国计算机函授学院计算机专业专科毕业;...
- 20.移植Freetype字体库
热门文章
- .NET Core开发日志——HttpClientFactory
- 使用 BenchmarkDotnet 测试代码性能
- 基于OIDC(OpenID Connect)的SSO
- C# 对程序窗口进程和进程ID
- 剑指offer之二叉搜索树的第K个节点
- linux环境下用TcpDump抓包分析总结
- linux命令 su和sudo,Linux中sudo和su的区别
- java mysql数据去重_java使用MySQL和HQL数据去重
- access函数_ACCESS中的DLookUp函数是如何运算的?
- r vector 4 elements_Vector类与Enumeration接口