博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript创建对象的方法--动态原型模式
阅读量:6928 次
发布时间:2019-06-27

本文共 476 字,大约阅读时间需要 1 分钟。

javascript创建对象的方法--动态原型模式

一、总结

1、作用:解决组合模式的属性和函数分离问题 

2、思路:基本思路和组合模式相同:共用的函数和属性用原型方式,非共用的的函数和属性用构造函数的方式

 

二、javascript创建对象的方法--动态原型模式

动态原型方法

动态原型方法的基本想法与混合的构造函数原型方式相同,即在构造函数内定义非函数属性,而函数属性则利用原型属性定义。

组合模式中实例属性与共享方法(由原型定义)是分离的,这与纯面向对象语言不太一致;动态原型模式将所有构造信息都封装在构造函数中,又保持了组合的优点。

其原理就是通过判断构造函数的原型中是否已经定义了共享的方法或属性,如果没有则定义,否则不再执行定义过程。该方式只原型上方法或属性只定义一次,且将所有构造过程都封装在构造函数中,对原型所做的修改能立即体现所有实例

 

三、代码

1  2  3  4   
5 课堂演示 6 7 8 41 42

1、重要:第26行,如果共用属性或者方法(就是原型模式定义的,第28-30行)定义了的话,就不再初始化

 

转载地址:http://pvkjl.baihongyu.com/

你可能感兴趣的文章
HTML页面去缓存
查看>>
javascript中Date对象的应用——简易日历的实现
查看>>
Hadoop 生态系统
查看>>
html文本框限制输入数字类型实现
查看>>
iOS开发基础知识--碎片32
查看>>
Sphinx在windows上的安装使用
查看>>
从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡
查看>>
文件管理框架,可实现后台编辑项目文件
查看>>
重点:怎样正确的使用QThread类(注:包括推荐使用QThread线程的新方法QObject::moveToThread)...
查看>>
深入理解JAVA序列化
查看>>
Android数据加密之Base64编码算法
查看>>
解决IE8不支持html5标签最好解决办法?
查看>>
EqualsBuilder和HashCodeBuilder
查看>>
取某字段不为空的数据is not null
查看>>
聚生网管
查看>>
005-TCP传输控制协议
查看>>
SQL 优化原则
查看>>
screen的使用
查看>>
UdpClient无法在局域网中发送UDP广播包的解决办法
查看>>
《CLR via C#》读书笔记 之 共享程序集和强名称程序集
查看>>