[前端JS学习笔记]JavaScript prototype 对象
2017-03-22 22:46
561 查看
一、概念介绍
prototype 对象 :
原型对象。在JavaScript中, 每一个对象都继承了另一个对象,后者称为"原型对象". 只有 null 除外,它没有自己的原型对象。
原型对象上的所有属性和方法,都能被派生对象所共享。通过构造函数实例的实例对象,都会被自动分配一个原型对象。每一个
构造函数的prototype属性,就是这个实例对象的原型对象。
如上图,在Animal的源性对象上添加一个属性color,结果会被实例对象bear1、bear2所共享。如果改变color值,会体现到各个实例对象上。
三、原型解决的问题
如果不使用原型,我们看下如下使用。Animal对象有say方法,对不同实例出来的对象,这个方法提供的功能是一样的,但是进行了一趟bear1.say === bear2.say比较,返回false。
说明不通过在原型对象基础上加的属性、方法,即函数可内部自定义的属性、方法,所有实例化出来的对象都会生成这两个对象,而且还不能共享, 有点浪费系统资源了。
prototype 对象 :
原型对象。在JavaScript中, 每一个对象都继承了另一个对象,后者称为"原型对象". 只有 null 除外,它没有自己的原型对象。
原型对象上的所有属性和方法,都能被派生对象所共享。通过构造函数实例的实例对象,都会被自动分配一个原型对象。每一个
构造函数的prototype属性,就是这个实例对象的原型对象。
二、原型使用
如上图,在Animal的源性对象上添加一个属性color,结果会被实例对象bear1、bear2所共享。如果改变color值,会体现到各个实例对象上。
三、原型解决的问题
如果不使用原型,我们看下如下使用。Animal对象有say方法,对不同实例出来的对象,这个方法提供的功能是一样的,但是进行了一趟bear1.say === bear2.say比较,返回false。
说明不通过在原型对象基础上加的属性、方法,即函数可内部自定义的属性、方法,所有实例化出来的对象都会生成这两个对象,而且还不能共享, 有点浪费系统资源了。
相关文章推荐
- [前端JS学习笔记]JavaScript prototype 对象
- 【JS学习笔记】08 JavaScript 对象
- javascript学习笔记(九) js对象 设计模式
- javascript学习笔记三之js对象
- JavaScript学习笔记之JS对象
- JavaScript学习笔记之JS事件对象
- [前端JS学习笔记]JavaScript 数组
- 韩顺平 javascript教学视频_学习笔记13_类和对象细节_创建对象的几种方式_js对象内存分析
- 前端学习笔记1---HTML meta简介、JavaScript简介创建对象--待完善
- javascript学习笔记--js内置对象
- javascript学习笔记--js对html对象的原生操作
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第30讲_类和对象细节_创建对象的几种方式_js对象内存分析_学习笔记_源代码图解_PPT文档整理
- JavaScript学习笔记(二) js对象
- JavaScript学习笔记之JS对象
- [前端JS学习笔记]JavaScript CallBack
- javascript学习笔记(八) js内置对象
- js学习笔记——理解javascript的对象与继承
- javascript学习笔记(十) js对象 继承
- JavaScript高级程序设计(第3版)学习笔记10 再访js对象
- [前端JS学习笔记]JavaScript CallBack