原型/构造函数/实例--傻傻分不清楚

  1. 原型 (prototype):

一个简单的对象,用于实现对象的属性继承。可以简单的理解成对象的爹。在 Firefox 和 Chrome 中,每个 JavaScript对象中都包含一个 proto (非标准)的属性指向它爹(该对象的原型),可 obj.__proto__进行访问;

  1. 构造函数:

可以通过 new来 新建一个对象 的函数;

  1. 实例:

通过构造函数和 new创建出来的对象,便是实例。 实例通过 __proto__指向原型,通过 constructor指向构造函数。
这里来举个栗子,以 Object为例,我们常用的 Objec() 便是一个构造函数,因此我们可以通过它构建实例。

// 实例
const instance = new Object()

此时, 实例为 instance, 构造函数为 Object,我们知道,构造函数拥有一个 prototype的属性指向原型,因此原型为:

// 原型
const prototype = Object.prototype

这里用一张图可以来看出三者的关系:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/zl13015214442/article/details/87907638