如何全面理解JavaScript原型与原型链的深层机制?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2291个文字,预计阅读时间需要10分钟。
原文示例:本文字例讲述了JS原型与原型链。
改写后:在JS中,我们经常会遇到原型。表面上的意思是,我们认为某个对象的原型,是用来继承的。但实际上,原型是这样的。
本文实例讲述了JS原形与原型链。分享给大家供大家参考,具体如下:
前言
在JS中,我们经常会遇到原型。字面上的意思会让我们认为,是某个对象的原型,可用来继承。但是其实这样的理解是片面的,下面通过本文来了解原型与原型链的细节,再顺便谈谈继承的几种方式。
原型
在讲到原型之前,我们先来回顾一下JS中的对象。在JS中,万物皆对象,就像字符串、数值、布尔、数组等。ECMA-262把对象定义为:无序属性的集合,其属性可包含基本值、对象或函数。对象是拥有属性和方法的数据,为了描述这些事物,便有了原型的概念。
无论何时,只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性,这个属性指向该函数的原型对象。所有原型对象都会获得一个constructor属性,这个属性包含一个指向prototype属性所在函数的指针。
这段话摘自《JS高级程序设计》,很好理解,以创建实例的代码为例。
本文共计2291个文字,预计阅读时间需要10分钟。
原文示例:本文字例讲述了JS原型与原型链。
改写后:在JS中,我们经常会遇到原型。表面上的意思是,我们认为某个对象的原型,是用来继承的。但实际上,原型是这样的。
本文实例讲述了JS原形与原型链。分享给大家供大家参考,具体如下:
前言
在JS中,我们经常会遇到原型。字面上的意思会让我们认为,是某个对象的原型,可用来继承。但是其实这样的理解是片面的,下面通过本文来了解原型与原型链的细节,再顺便谈谈继承的几种方式。
原型
在讲到原型之前,我们先来回顾一下JS中的对象。在JS中,万物皆对象,就像字符串、数值、布尔、数组等。ECMA-262把对象定义为:无序属性的集合,其属性可包含基本值、对象或函数。对象是拥有属性和方法的数据,为了描述这些事物,便有了原型的概念。
无论何时,只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性,这个属性指向该函数的原型对象。所有原型对象都会获得一个constructor属性,这个属性包含一个指向prototype属性所在函数的指针。
这段话摘自《JS高级程序设计》,很好理解,以创建实例的代码为例。

