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

如何用图片文字做网站哪家网站

如何用图片文字做网站,哪家网站,领取流量网站,广州番禺越秀和樾府JavaScript继承 1、JS 的继承到底有多少种实现方式呢? 2、ES6 的 extends 关键字是用哪种继承方式实现的呢? 继承种类 原型链继承 function Parent1() {this.name parentlthis.play [1, 2, 3] }function Child1() {this.type child2 }Child1.prototype new Parent1(…JavaScript继承 1、JS 的继承到底有多少种实现方式呢? 2、ES6 的 extends 关键字是用哪种继承方式实现的呢? 继承种类 原型链继承 function Parent1() {this.name parentlthis.play [1, 2, 3] }function Child1() {this.type child2 }Child1.prototype new Parent1(); console.log(new Child1());let child1 new Child1(); child1.play.push(4) let child2 new Child1(); console.log(child1.play,child2.play)输出 Parent1 { type: child2 } [ 1, 2, 3, 4 ] [ 1, 2, 3, 4 ]特点 父类内存空间是共享的当一个发生变化的时候,另外一个也随之进行了变化。 构造函数继承(借助 call) function Parent1() {this.name parent }Parent1.prototype.getName function () {return this.name; }function Child1() {Parent1.call(this);this.type child1 }let child new Child1(); console.log(child); console.log(child.getName())输出 Child1 { name: parent, type: child1 } C:\Users\liyd\WebstormProjects\test\dataConvert.js:16 console.log(child.getName()) ^ TypeError: child.getName is not a function 缺点 只能继承父类的实例属性和方法。不能继承原型属性和方法。 组合继承方式推荐 function Parent3() {this.name parent3this.play [1,2,3] }Parent3.prototype.getName function () {return this.name; }function Child3() {Parent3.call(this);this.type child6 } // 第一次调用Parent3 Child3.prototype new Parent3() // 手动挂上构造器指向自己的构造函数 Child3.prototype.constructor Child3var child3 new Child3(); var child4 new Child3(); child3.play.push(4) console.log(child3.play,child4.play) console.log(child3.getName()) console.log(child4.getName())输出 [ 1, 2, 3, 4 ] [ 1, 2, 3 ] parent3 parent3 原型式继承 let parent4 {name:parent4,friends:[p1,p2,p3],getName:function () {return this.name} }let person4 Object.create(parent4) person4.name tom person4.friends.push(无始)let person5 Object.create(parent4); person5.friends.push(狂蟒)console.log(person4.name) console.log(person4.name person4.getName()) console.log(person5.name) console.log(person4.friends) console.log(person5.friends)输出 tom true parent4 [ p1, p2, p3, 无始, 狂蟒 ] [ p1, p2, p3, 无始, 狂蟒 ]寄生式继承 使用原型式继承可以获得一份目标对象的浅拷贝然后利用这个浅拷贝的能力再进行增强添加一些方法 寄生式继承相比于原型式继承还是在父类基础上添加了更多的方法 let parent5 {name:parent5,friends:[p1,p2,p3],getName:function () {return this.name} }function clone(original) {let clone Object.create(original)clone.getFriends function (){return this.friends}return clone }let person5 clone(parent5); let person6 clone(parent5); person5.friends.push(666) console.log(person5.getName()) console.log(person5.getFriends()) console.log(person6.getName()) console.log(person6.getFriends())let person5 clone(parent5); console.log(person5.getName()) console.log(person5.getFriends())输出 parent5 [ p1, p2, p3, 666 ] parent5 [ p1, p2, p3, 666 ]寄生组合式继承强烈推荐 在前面这几种继承方式的优缺点基础上进行改造得出了寄生组合式的继承方式 这也是所有继承方式里面相对最优的继承方式 function clone(parent, child) {// 这里改用 Object.create 就可以减少组合继承中多进行一次构造的过程child.prototype Object.create(parent.prototype)child.prototype.constructor child }function Parent6(){this.name parent6this.play [1,2,3] }Parent6.prototype.getName function () {return this.name }function Child(){Parent6.call(this)this.friends child6 }clone(Parent6,Child)Child.prototype.getFriends function () {return this.friends }let person6 new Child() console.log(person6) console.log(person6.getName()) console.log(person6.getFriends())输出 Child { name: parent6, play: [ 1, 2, 3 ], friends: child6 } parent6 child6 总结 extends 实现继承(超推荐 ES6) 语法糖 class Person{constructor(name) {this.name name}getName function () {console.log(Person:,this.name)return this.name} }class Gamer extends Person{constructor(name,age) {super(name);this.age age} }let gamer new Gamer(无始无终,26); console.log(gamer.getName())输出 Person: 无始无终 无始无终
http://www.dnsts.com.cn/news/6797.html

相关文章:

  • 宁波网站优化找哪家网站开发哪里好
  • 打电话给客户怎样介绍自己是做网站的?开场白?高校健康驿站建设指引
  • 福州做网站优化在线教育网站怎样建设
  • 我也来做外国网站购物四川seo推广公司
  • 建网站怎样往网站传视频江苏扬州建设局网站
  • 大兴模版网站开发公司哪家好网站详情页用哪个软件做
  • 绍兴网站建设seo如何设置网站默认首页
  • 网站运营管理主要内容云南网站建设哪家便宜
  • 默认网站停止nginx进wordpress不能进目录
  • 网站建设用户量分析南京建设网站内容
  • 成都网站优化seo天津 网站 备案
  • 厦门建站方案南昌企业免费建站
  • 网站顶部flash下载典型网站开发的流程
  • 河北移动端网站制作屏边县住房和城乡建设局网站
  • 做电影网站程序好用吗做淘宝代码的网站
  • 备案网站可以做影视站自媒体平台是什么意思
  • 建立自己的购物网站北大青鸟计算机培训学费
  • 免费的ftp网站网站标头图片切换
  • 体育用品网站模板北京网站制作设计价格
  • 网站开发时如何设计英文版本可以推广网站
  • 肇庆住房和城乡建设局网站龙华网站建设的软件
  • 网站系统建设的主要意义做家电维修网站能接到单吗
  • 网站建设得花多少钱建设网站一般需要多少钱
  • 微信网站建设和维护报价表微信公众号同步wordpress
  • 哪些网站是做色选机销售的关键词举例
  • 分布式移动网站开发技术湛江制作网站学校
  • 贷款网站怎么做的石家庄网站平台
  • 深圳做分销网站公司百度竞价排名算法
  • 网站产品优化方案用百度网盘做视频网站
  • 检测网站安全电子商务主要干什么