位置: 编程技术 - 正文

深入理解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):对象创建模式(上篇)(深入理解计算机系统)

  • 公司投资股票亏损,要交企业所得税和个人所得税吗
  • 增值税进项税销项税
  • 纳税申报表包含哪些内容
  • 一般劳务报酬和税收区别
  • 车辆购置税免税申报如何操作
  • 买车时的保险包括哪些费用,多少钱
  • 企业支付宝里面的钱可以随时提到个人银行卡吗
  • 费用怎样确认是可抵扣暂时性差异?
  • 商场交的房租押金可以退吗
  • 怎样冲减虚开发票的会计分录
  • 开具增值税发票销货清单的最新规定是什么
  • 企业间借款利息涉税处理
  • 利得一定会影响利润吗
  • 小规模建筑安装增值税税率是多少
  • 对方用房子抵债会计怎么记账
  • 通讯费 个税
  • 小企业会计准则会计科目表
  • 期间费用的研究费用填什么
  • 企业重组特殊性处理通俗理解
  • 财政拨付专项资金进什么会计科目
  • 纳税人外购下列已税消费品
  • 投资长期溢价债券,容易获取投资收益
  • 监事会职权范围是什么
  • php图片处理尺寸
  • win7系统不可用怎么办
  • vue报错cannot read property
  • vue three.js
  • softag
  • 增值税缓息是什么意思
  • 基于中国国情的中国式现代化具有哪些特色
  • 微信小店的入口在哪里
  • 车子以旧换新
  • 小规模企业逾期是微信扫码付款吗
  • 劳动仲裁要出钱吗
  • 差旅费包干是什么意思
  • 如何对php网站页面进行修改
  • 卸载sql server 2008
  • 收入和成本的原则是什么
  • 个体户怎么网上变更法人
  • 商品流通企业采购费用
  • 累计预扣法利弊
  • 交易性金融资产公允价值变动怎么算
  • 金税四期对企业影响
  • 计划成本法存货会计分录
  • 企业股权转让收入会计处理
  • 存货过期处理怎么做分录
  • 企业职工福利费可用于职工的医疗卫生费用
  • 销售产品用什么词形容
  • 收回多发工资需要什么附件入账
  • 怎么取最大值函数
  • 收到银行利息记什么会计科目
  • 破产清算的程序特点
  • 销售收入用营业收入还是营业总收入
  • 培训费用支出
  • 企业会计准则解释第16号
  • SQL Server Bulk Insert 只需要部分字段时的方法
  • sql server本地登录
  • windows硬盘是什么意思
  • windows server 2008 r2最大支持内存
  • mac怎样解压rar
  • ubuntu20.04.1安装
  • win7开始图标怎么变大点
  • windowsxp如何隐藏文件
  • win8 侧边栏
  • win8怎么样的
  • win8怎么禁止开机启动项
  • win8怎么运行命令
  • 批处理应用实例
  • Lesson02_05 头元素
  • perl -pe
  • jquery简单例子
  • vue两个花括号
  • Node.js中的construct
  • jquery鼠标点击事件怎么写
  • 最精简的年终工作总结
  • 安卓模拟器测试
  • 备份系统apk
  • jquery点击按钮左右滚动效果
  • 建筑业按多少税收
  • 乌鲁木齐市公立幼儿园有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设