位置: 编程技术 - 正文

深入理解JavaScript系列(45):代码复用模式(避免篇)详解(深入理解新发展理念)

编辑:rootadmin

推荐整理分享深入理解JavaScript系列(45):代码复用模式(避免篇)详解(深入理解新发展理念),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:深入理解javascript特性.pdf,深入理解新发展理念,深入理解新发展理念,深入理解计算机系统,深入理解javascript特性.pdf,深入理解计算机系统,深入理解javascript,深入理解javascript特性,内容如对您有帮助,希望把文章链接给更多的朋友!

介绍

任何编程都提出代码复用,否则话每次开发一个新程序或者写一个新功能都要全新编写的话,那就歇菜了,但是代码复用也是有好要坏,接下来的两篇文章我们将针对代码复用来进行讨论,第一篇文避免篇,指的是要尽量避免使用这些模式,因为或多或少有带来一些问题;第二排是推荐篇,指的是推荐大家使用的模式,一般不会有什么问题。

模式1:默认模式

代码复用大家常用的默认模式,往往是有问题的,该模式使用Parent()的构造函数创建一个对象,并且将该对象赋值给Child()的原型。我们看一下代码:这种模式的缺点是Child不能传进参数,基本上也就废了。

模式2:借用构造函数

该模式是Child借用Parent的构造函数进行apply,然后将child的this和参数传递给apply方法:缺点也很明显,say方法不可用,因为没有继承过来。

模式3:借用构造函数并设置原型

深入理解JavaScript系列(45):代码复用模式(避免篇)详解(深入理解新发展理念)

上述两个模式都有自己的缺点,那如何把两者的缺点去除呢,我们来尝试一下:运行起来,一切正常,但是有没有发现,Parent构造函数执行了两次,所以说,虽然程序可用,但是效率很低。

模式4:共享原型

共享原型是指Child和Parent使用同样的原型,代码如下:确定还是一样,Child的参数没有正确接收到。

模式5:临时构造函数

首先借用构造函数,然后将Child的原型设置为该借用构造函数的实例,最后恢复Child原型的构造函数。代码如下:问题照旧,Child不能正常接收参数。

模式6:klass

这个模式,先上代码吧:怎么样?看着是不是有点晕,说好点,该模式的语法和规范拧得和别的语言一样,你愿意用么?咳。。。

总结

以上六个模式虽然在某种特殊情况下实现了某些功能,但是都存在各自的缺点,所以一般情况,大家要避免使用。

深入理解JavaScript系列():对象创建模式(上篇) 介绍本篇主要是介绍创建对象方面的模式,利用各种技巧可以极大地避免了错误或者可以编写出非常精简的代码。模式1:命名空间(namespace)命名空间

深入理解JavaScript系列():设计模式之桥接模式详解 介绍桥接模式(Bridge)将抽象部分与它的实现部分分离,使它们都可以独立地变化。正文桥接模式最常用在事件监控上,先看一段代码:addEvent(element,'cl

深入理解JavaScript系列():设计模式之状态模式详解 介绍状态模式(State)允许一个对象在其内部状态改变的时候改变它的行为,对象看起来似乎修改了它的类。正文举个例子,就比如我们平时在下载东西

标签: 深入理解新发展理念

本文链接地址:https://www.jiuchutong.com/biancheng/382867.html 转载请保留说明!

上一篇:深入理解JavaScript系列(38):设计模式之职责链模式详解(深入理解计算机系统)

下一篇:深入理解JavaScript系列(47):对象创建模式(上篇)(深入理解计算机系统)

  • 进口货物账务如何处理
  • 向投资者支付的股息不得在计算应纳税所得额时扣除
  • 劳务报酬个人所得税怎么计算
  • 百旺税控盘汇总表怎么看
  • 旅游发票可以抵扣吗
  • 出口退税综合服务平台广东
  • 平均分摊法计算公式
  • 原始凭证包括会计档案吗
  • 单位车辆折旧完怎么处理
  • 企业自建房屋建几层合适
  • 净资产出资属于货币出资吗
  • 小规模都纳什么税
  • 发票作废税金怎么算
  • 详解出口退税的涵义
  • 资产评估入账的评估报告
  • 应收账款产生的利息分录
  • 计算应纳税所得额时可以扣除的项目有
  • 金蝶系统怎么修改库存数量
  • 企业支付个人劳务费需要发票吗
  • 劳务费和服务费税率一样吗
  • 备份计算机需要多久
  • 小规模发票一般怎么开
  • 结转所得税费用到本年利润的会计分录
  • php7.3安装
  • 购买免税农产品的会计分录
  • mysql跨库join
  • 前端作业做一个网站
  • 杀疯了出自哪里
  • vue和react差别
  • 园林绿化工程公司排名
  • 公允价值变动损益
  • ps里的羽化是什么意思
  • 拓展训练属于培训费吗
  • 或有资产确认的前提为什么是
  • 维修费开票属于信息技术服务吗
  • 退休认证在网上怎么操作
  • 定额备用金制度报销时用什么科目
  • mysql集群三种方式
  • 契税计税依据是否包含耕地占用税
  • 单位购买预付卡可以用现金吗
  • 罚款可以直接在12123
  • 使用权资产是什么意思
  • sql2008强制还原数据库
  • 应付账款的入账价值应当包括增值税的进项税额
  • 差旅费报销时如何处理
  • 中小企业抵税
  • 主营业务利润和利润总额
  • 混合销售举例说明
  • 收到退留抵税额会计分录
  • 公司购买的家电怎么入账
  • 固定资产清理账户期末有余额吗
  • 专利补贴收入计入什么科目
  • 期初数据在哪里找
  • 城市生活垃圾处理方式有哪几种
  • 红字信息表状态b900077
  • 拆除费计入哪个科目
  • 土地出让的钱归谁
  • 当期损益包括哪些科目指的
  • mysql获取数据库表名
  • MySQL数据库安装后通常默认的管理员用户名为
  • 简单基是什么
  • kali linux 视频教程
  • vmware img镜像
  • aow.exe是什么进程
  • windows如何创建工作组
  • linux系统中命令什么大小写
  • ptssvc.exe - ptssvc是什么进程 有什么用
  • ftp自动上传文件到服务器
  • win8飞行模式在哪
  • 学习笔记一
  • opengl编译
  • nodejs基础知识
  • Shell、Perl、Python、PHP访问 MySQL 数据库代码实例
  • js window.screen
  • 使用jquery实现的项目
  • javascript 类
  • 上海市税务官方网站网址
  • 国税局调地方
  • 美国买东西邮寄怎么寄
  • 超豪华小汽车需要交什么税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设