原型

作者: 大笑一声 | 来源:发表于2017-08-23 21:12 被阅读0次

一:你是如何理解js 中的原型的

1.原型是什么?

我们js中  所有的的函数 包括原生的,和自定的  都默认有一个 prototype属性,这属性给我们指向了一个对象,就是原型对象,我们可以通过原型对象来添加属性和方法。

2. 原型中重要的几个要素

a. prototype(显示原型)      通过它我们可以找到函数所对应的原型对象

b. constructor                此属性存在每个函数的原型对象中, 我们可以通过它找到指定的原函数

c. __proto__  隐式原型)      当我们实例化一个对象(函数)时, 此函数自动拥有了__proto__ 属性, 且它的值是构造函数的prototype的值,也就是此函数的原型对象。

二:请解释一下原型链的原理

说到原型链,我用一个最简单的例子来说明:

首先我们定义一个函数,并且在函数中声明若干变量,同时我们通过prototype 属性在函数的原型对象中声明若干变量。

接着我们将函数实例化,这是此函数就自动拥有了__proto__ 属性(隐式原型)。当调用我们函数中声明的变量, 其中查找的过程是 首先到函数本身去找, 如果找到即返回, 如果没找到 那么根据__proto__ 去我们的原型中查找,找到即返回。 如果还没找到,再根据原型对象中的 __proto__ 继续往上一级对象中查找, 以此类推,一直找到最顶级的 Object 还没有的话, 那么会返回undefined 。

三:如何理解原型继承

基于咱们原型链的原理,就可以证明函数和其原型以及上一级原型对象存在一种继承的关系,正是因为存在这种关系,我们才能够通过原型链的原理找到我们想要的属性或者方法

0000pt�ݖ�

相关文章

  • JavaScript 原型、原型链与原型继承

    原型,原型链与原型继承 用自己的方式理解原型,原型链和原型继承 javascript——原型与原型链 JavaSc...

  • JavaScript 原型和原型链

    原型 在 JavaScript 中,我们所称的原型有两个使用语境: 原型关系 原型属性 原型关系指对象的原型对象,...

  • JavaScript 原型和原型链

    原型 在 JavaScript 中,我们所称的原型有两个使用语境: 原型关系 原型属性 原型关系指对象的原型对象,...

  • 原型、原型链

    (什么是原型、原型链?有什么作用) JavaScirpt深入之从原型到原型链 图解 Javascript 原型链 ...

  • 关于原型原型链的理解

    什么是原型? 什么是原型链? 为什么需要原型,和原型链?

  • js的原型对象&原型链&js的继承

    原型对象 & 原型链 原型对象分2种:显式原型和隐式原型。 显式原型就是我们常用的prototype属性,是函数的...

  • 4.4 JavaScript

    4.4.1. 原型链 4.4.1.1. 显式原型和隐式原型   JavaScript的原型分为显式原型(expli...

  • 原型、原型链

    理解JavaScript原型 彻底理解JavaScript原型 原型 原型是一个对象,所有对象都可以成为原型,其...

  • 廖雪峰JS小记

    (function(){})() 原型,原型链 浅谈Js原型的理解JS 原型与原型链终极详解 对象 对象:一种无序...

  • 2-6 原型和原型链 - 5个原型规则

    2-6 原型和原型链 - 5个原型规则 5条原型规则,原型规则是学习原型链的基础。 第一、所有引用类型(数组、函数...

网友评论

      本文标题:原型

      本文链接:https://www.haomeiwen.com/subject/uvvjdxtx.html