当前位置: 首页 > news >正文

阿里巴巴国际站买家入口北京微信网站建设公司

阿里巴巴国际站买家入口,北京微信网站建设公司,php做网站的重点,做网站业务的 怎么跑客户上篇文章给大家分享了 js继承中的借用构造函数继承 web前端tips#xff1a;js继承——借用构造函数继承 在借用构造函数继承中#xff0c;我提到了它的缺点 无法继承父类原型链上的方法和属性#xff0c;只能继承父类构造函数中的属性和方法 父类的方法无法复用#xff0… 上篇文章给大家分享了 js继承中的借用构造函数继承 web前端tipsjs继承——借用构造函数继承 在借用构造函数继承中我提到了它的缺点 无法继承父类原型链上的方法和属性只能继承父类构造函数中的属性和方法 父类的方法无法复用每个子类实例都会创建一份方法的副本 有没有方法解决这个缺点捏 组合继承 听名字即可明白肯定是多个继承方法组合在一起实现js的继承突出各自优点互补各自缺点。 组合继承是JavaScript中实现继承的一种常见方式。它通过结合原型链和构造函数来实现继承。 具体而言组合继承通过在子类构造函数中调用父类构造函数从而继承父类的属性并且使用原型链继承父类的方法。 以下是实现组合继承的基本步骤 创建父类构造函数定义一个父类构造函数用来初始化父类的属性和方法创建子类构造函数定义一个子类构造函数通过调用父类构造函数来继承父类的属性并设置子类自己的属性。继承父类的方法将子类的原型对象设置为父类的实例从而继承父类的方法。添加子类特有的方法在子类的原型对象上添加子类特有的方法。创建子类实例通过子类构造函数创建子类的实例并调用继承自父类的方法以及子类自己的方法。 // 1 function Parent(name) {this.name name;this.colors [red, blue, green]; } Parent.prototype.sayName function() {console.log(this.name); };// 2 function Child(name, age) {Parent.call(this, name);this.age age; }// 3 Child.prototype new Parent();// 这行代码的作用是确保子类原型对象的constructor属性指向子类自身而不是指向父类。因为在前面修改原型对象的过程中constructor属性被覆盖为父类的构造函数 Child.prototype.constructor Child; // 4 Child.prototype.sayAge function() {console.log(this.age); }// 5 var child1 new Child(Tom, 5); child1.colors.push(black); console.log(child1.name); // 输出 Tom console.log(child1.age); // 输出 5 console.log(child1.colors); // 输出 [red, blue, green, black] child1.sayAge() // 输出 5var child2 new Child(Jerry, 4); console.log(child2.name); // 输出 Jerry console.log(child2.age); // 输出 4 console.log(child2.colors); // 输出 [red, blue, green] child2.sayAge() // 输出 4通过以上步骤你就可以使用组合继承在JavaScript中实现父类和子类之间的继承关系。这种方式既能够继承父类的属性又能够继承父类的方法并且还能添加子类特有的方法。 优点 子类实例能够拥有父类的属性和方法包括通过原型继承得到的共享方法。子类实例能够拥有自己独有的属性和方法。使用原型链继承时父类的原型方法可以在子类实例上直接访问减少了内存占用。借用构造函数继承可以避免引用类型属性的共享问题。 缺点 在使用组合继承时每次创建子类实例都会调用一次父类的构造函数导致父类的属性被重复定义。原型链继承会将父类的属性方法复制到子类的原型上可能导致内存占用过大。组合继承需要调用两次父类的构造函数一次是在子类的构造函数中调用 Parent.call(this)一次是通过 Child.prototype new Parent() 实现原型继承。这样做既增加了调用次数也可能导致父类构造函数中的逻辑被执行多次。 总结来说组合继承是一种常用的继承方式它既能够继承父类的属性和方法又能够拥有自身独有的属性和方法。但它的缺点是在创建子类实例时会重复调用父类的构造函数可能导致内存占用过大并且需要额外处理父类构造函数中的逻辑。 结语 牵手 持续为你分享各类知识和软件 欢迎访问、关注、讨论 并留下你的小心心❤
http://www.sczhlp.com/news/167567/

相关文章:

  • 美食网站设计的基本思路wordpress responsive
  • 网站域名备案更改吗北京自助建站系统
  • 外贸网站建设不可缺少的灵活性合肥在线官网
  • 盛世华诞 举国同庆|热烈庆祝 LEWISAK 英勇重创消火栓 1 周年!
  • 完整教程:<el-table>构建树形结构
  • 公司网站最下面突然有乱码wordpress抽奖主题
  • uboot 2020版本下gpio命令的使用
  • 贵阳网站建设价格好的做蛋糕网站
  • 网站建设有什么好处网站制作报价黑河
  • photoshop制作网站wordpress ark 破解
  • 网站建设用款wordpress滑动显示分类文章
  • 网站引量方法哪个网站做海报好
  • 网站开发提成高并发系统架构
  • 免费网站建设大全红点设计官网
  • 优秀的图片设计网站wordpress去掉尾巴
  • 东莞网站建设网站推广价钱linux下用python做网站
  • 网站后台怎么用西安 房产网站建设
  • 医院网站优化网站建设的核心是
  • 购买域名的网站挂机宝可以做网站
  • 资料库网站开发报价手机界面设计模板
  • 商贸公司网站建设企业网络营销推广平台
  • 天津网站开发tjniu网络优化有前途吗
  • 如何在markdown中插入折叠框
  • markdown语法详解
  • CF2115 VP 记录
  • 网站建设公司平台班级网站建设php
  • 在那个网站做推广实用建设网站北京
  • 辽宁省住房和城乡建设厅官方网站建设工程施工合同范文
  • 什么是建设网站工具网站建设开发步骤
  • 网页网站的区别招远网站建设公司地址