加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

前端基本进阶:JS原型、原型链、工具

发布时间:2019-02-28 17:43:47 所属栏目:建站 来源:考拉阅读前端团队
导读:一. 平凡工具与函数工具 JavaScript 中,万物皆工具!但工具也是有区此外。分为平凡工具和函数工具,Object 、Function 是 JS 自带的函数工具。下面举例声名: varo1={}; varo2=newObject(); varo3=newf1(); functionf1(){}; varf2=function(){}; varf3=ne

个中add是Function工具的实例。而Function的原型工具同时又是Object原型的实例。这样就组成了一条原型链。原型链的会见,着实跟浸染域链有很大的相似之处,他们都是一次单向的查找进程。因此实例工具可以或许通过原型链,会见处处于原型链上工具的全部属性与要领。这也是foo最终可以或许会见处处于Object原型工具上的toString要领的缘故起因。

基于原型链的特征,我们可以很轻松的实现担任。

详细根基常知趣识后,我们说明下图:

第一

先从实例add()说明

实例add() 为 Function的实例

以是

add()的__proto__指向其结构函数的原型即 Function.prototype

  1. var add = function () {}  
  2. add.__proto__ === Function.prototype//true 

出格留意 结构函数Funciton的__proto__指向自身的Function.prototype

  1. Function.__proto__ === Function.prototype//true 

以是结构函数Function的__proto__和prototype都指向Function.prototype

第二

由于Function和Object都是js自带函数

且 Object 也是由 new Function建设而来

  1. typeof Function  
  2. "function"  
  3. typeof Object  
  4. "function" 

以是 Object的__proto__指向Function的原型工具即 Function.prototype

  1. Object.__proto__ === Function.prototype  
  2. true 

因此 Object 的 prototype 和 Function.prototype的 __proto__都指向 Object.prototype

第三

Object.prototype被称为原型链的E端,由于它的__proto__为null

【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读