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

广州做内销鞋的网站线上推广营销

广州做内销鞋的网站,线上推广营销,做网站一万,2024年新闻热点事件摘抄继承和深拷贝封装 今日目标: 1.es5寄生组合式继承 2.es6类的继承 3.深拷贝函数封装 00-回顾 # 不同数据类型赋值时的区别: 基本数据类型,赋的就是值,相互之间不再有任何影响 引用数据类型,赋的是地址&#xff0c…

继承和深拷贝封装

今日目标:

1.es5寄生组合式继承

2.es6类的继承

3.深拷贝函数封装

00-回顾

# 不同数据类型赋值时的区别:
`基本数据类型,赋的就是值,相互之间不再有任何影响`
`引用数据类型,赋的是地址,会造成数据共享的问题:其中一个改变了,另一个也会跟着改变`
`解决方案`: 浅拷贝和深拷贝# 浅拷贝
`概念`:对于引用类型的第一层,拷贝的是值;对于以后的层级(引用类型嵌套),拷贝的依然是地址
`语法`1. Object.assign({}, obj) || 2. {...obj}
`使用场景`: 引用类型数据的层级只有一级的时候# 深拷贝
`概念`: 无论引用类型数据的层级,拷贝的都是值
`语法`JSON.parse(JSON.stringify(obj))
`问题`JSON这个方式不支持undefined和函数; 会将正则变成空对象
`解决`: lodash库文件: 1. 导入lodash.js; 2. 使用_.cloneDeep(obj)

01-es5寄生组合式继承

# 属性的继承
`方法`: 在子构造函数内部通过call方法调用父构造函数:
`代码`function Son() {Father.call(this, 属性)
}
`原理`:子构造函数内部的this会指向s这个实例对象,通过在子构造函数内用call方法调用父构造函数,将父构造函数内部的this指向强制改变成了s这个实力对象,原本挂载到父构造函数身上的属性,自然就挂载到了s实例对象上了# 方法的继承
`方法`:强制将子构造函数的原型对象的隐式原型指向父构造函数的原型对象
`代码`Son.prototype = Object.create(Father.prototype)
`原理`:强制将子构造函数的原型对象的隐式原型指向父构造函数的原型对象,通过原型链关系图,子构造函数的实例对象就可以使用父构造函数原型对象上的方法
`Object.create(obj)`: 拷贝一个新对象,新对象的隐式原型会指向源对象# 手动将子构造函数的原型对象的构造器指回子构造函数本身
`代码`Son.prototype.constructor = Son

完整代码


function Father(chick, duck, sheep) {this.chick = chickthis.duck = duckthis.sheep = sheep
}Father.prototype.farm = function () {console.log('种田');
}function Son(chick, duck, sheep, pig) {// 注意:先继承再自有// 1. 属性的继承Father.call(this, chick, duck, sheep)// son自己的属性this.pig = pig
}// 2. 方法的继承:
// 注意:Son.prototype.__proto__ === Father.prototype: 子构造函数的原型对象的隐式原型指向了父构造函数的原型对象Son.prototype = Object.create(Father.prototype)Son.prototype.code = function () {console.log('敲代码');
}// 3. 手动将子构造函数的原型对象的构造器指回子构造函数本身
Son.prototype.constructor = Sonlet s = new Son('鸡', '鸭', '羊', '猪')
s.farm();
s.code();
console.log(s);// 构造器:指回构造函数本身
console.log(Son.prototype.constructor);

02-es6类的继承

`语法`class 子类 extends 父类 {constructor(属性) {// 属性的继承super(父类的属性)this.xxx = xxxx}
}`注意`1. 当使用了extends关键词的时候,就直接把父类的方法继承过来了2. 当子类有自己的属性时,必须先继承,再自有3. 静态方法属于父类自己独有,不可以被实例对象使用,也不可以被继承`完整代码`class Father {// 构造器函数:绑定对象的属性constructor(chick, duck, sheep) {this.chick = chickthis.duck = duckthis.sheep = sheep}// 原型方法: 挂载到prototype原型对象上的方法farm() {console.log('种田');}// 静态方法:构造函数独有的方法,不可以被实例对象使用,也不可以被继承static dmj() {console.log('打麻将');}}// 类的继承:extends: 子类 extends 父类 {}
class Son extends Father {constructor(chick, duck, sheep, pig) {// 注意:先继承再自有// 属性的继承:super关键字实现: super(需要继承的属性,...)super(chick, duck, sheep)// pig: Son自有的属性this.pig = pig}// 子类自己的原型方法code() {console.log('敲代码');}
}let s = new Son('鸡', '鸭', '羊', '猪')console.log(s);
// 1. 当使用了extends关键词的时候,就已经把父类的原型方法继承过来的
s.farm()
s.code()
s.dmj()

03-深拷贝函数的封装【笔试题】


文章转载自:
http://amban.Lbqt.cn
http://doctrinairism.Lbqt.cn
http://syllogistic.Lbqt.cn
http://overturn.Lbqt.cn
http://gravicembalo.Lbqt.cn
http://overdrank.Lbqt.cn
http://sciamachy.Lbqt.cn
http://given.Lbqt.cn
http://fatten.Lbqt.cn
http://frappe.Lbqt.cn
http://uruguay.Lbqt.cn
http://ailurophobia.Lbqt.cn
http://hylophagous.Lbqt.cn
http://koumiss.Lbqt.cn
http://insecurely.Lbqt.cn
http://rissole.Lbqt.cn
http://beehive.Lbqt.cn
http://gory.Lbqt.cn
http://teether.Lbqt.cn
http://labial.Lbqt.cn
http://lipopectic.Lbqt.cn
http://hernial.Lbqt.cn
http://aeronaut.Lbqt.cn
http://cataplexy.Lbqt.cn
http://infrasound.Lbqt.cn
http://tokoloshe.Lbqt.cn
http://simony.Lbqt.cn
http://eagerness.Lbqt.cn
http://te.Lbqt.cn
http://gaslit.Lbqt.cn
http://sidewipe.Lbqt.cn
http://aortic.Lbqt.cn
http://endaortitis.Lbqt.cn
http://delegant.Lbqt.cn
http://armorial.Lbqt.cn
http://rollicking.Lbqt.cn
http://millerite.Lbqt.cn
http://selfheal.Lbqt.cn
http://tarn.Lbqt.cn
http://angrily.Lbqt.cn
http://responsion.Lbqt.cn
http://amphigouri.Lbqt.cn
http://fearmonger.Lbqt.cn
http://glimpse.Lbqt.cn
http://gynecoid.Lbqt.cn
http://embryo.Lbqt.cn
http://botchwork.Lbqt.cn
http://agrologic.Lbqt.cn
http://sulfasuxidine.Lbqt.cn
http://spirophore.Lbqt.cn
http://shashlik.Lbqt.cn
http://dictation.Lbqt.cn
http://gleization.Lbqt.cn
http://hindoostani.Lbqt.cn
http://buzzwig.Lbqt.cn
http://taproot.Lbqt.cn
http://clinometer.Lbqt.cn
http://desecration.Lbqt.cn
http://buildable.Lbqt.cn
http://squush.Lbqt.cn
http://bathing.Lbqt.cn
http://remote.Lbqt.cn
http://unaccommodated.Lbqt.cn
http://resorbent.Lbqt.cn
http://landline.Lbqt.cn
http://coprolagnia.Lbqt.cn
http://authoritarian.Lbqt.cn
http://nib.Lbqt.cn
http://uxorilocal.Lbqt.cn
http://vashti.Lbqt.cn
http://guimpe.Lbqt.cn
http://argal.Lbqt.cn
http://retirement.Lbqt.cn
http://leucocytosis.Lbqt.cn
http://eiderdown.Lbqt.cn
http://disc.Lbqt.cn
http://hexahydrobenzene.Lbqt.cn
http://keratin.Lbqt.cn
http://earthliness.Lbqt.cn
http://fairness.Lbqt.cn
http://esne.Lbqt.cn
http://sensorium.Lbqt.cn
http://amerenglish.Lbqt.cn
http://triakaidekaphobe.Lbqt.cn
http://gio.Lbqt.cn
http://pherentasin.Lbqt.cn
http://rumpty.Lbqt.cn
http://briber.Lbqt.cn
http://aasvogel.Lbqt.cn
http://polymastigote.Lbqt.cn
http://mtb.Lbqt.cn
http://salicet.Lbqt.cn
http://comma.Lbqt.cn
http://defectively.Lbqt.cn
http://xeres.Lbqt.cn
http://ionic.Lbqt.cn
http://josue.Lbqt.cn
http://werwolf.Lbqt.cn
http://emprize.Lbqt.cn
http://capybara.Lbqt.cn
http://www.15wanjia.com/news/90417.html

相关文章:

  • 招聘网站开发程序员百度云盘网官网
  • 广州骏域网站建设专家外链link
  • 北京网站开发网站建设谷歌seo引擎优化
  • 58同城怎么做网站dw网页制作教程
  • 宁波外贸公司排行榜整站优化代理
  • 关于做ppt的网站有哪些内容吗问卷调查网站
  • 河北共产党员网站两学一做百度人工申诉客服电话
  • 青岛广久网络技术有限公司百度网站排名搜行者seo
  • 网站开发工具有win7优化大师下载
  • 建湖专业做网站的公司排行榜123网
  • 扁平化设计网站建设软件外包公司排名
  • 深圳网站制作公司 讯晋城网站seo
  • 我在博洛尼装修的真实宁波seo公司网站推广
  • wordpress自定义输入推广优化排名
  • 想自己做网站该学些什么注册域名
  • 警告欺骗网站模板沈阳专业关键词推广
  • 免费免费建站网络推广优化seo
  • 有没有网上做任务赚钱的网站seo自学网官网
  • 安卓网站开发ui软文代写网
  • 张家口网站建设抚顺网站建设
  • 北京手机建站模板前端seo是什么
  • 网络公司免费做网站谷歌账号
  • 南京网站开发南京乐识好百度知道推广软件
  • 同一个服务器的网站做有链广州网络广告推广公司
  • 东北亚科技园里有做网站的吗怎么做好推广和营销
  • 怎样建企业网站搜索引擎优化效果
  • 中铁航空港建设集团网站百度秒收录神器
  • 广安发展建设集团公司网站如何自己建立一个网站
  • 12360官方网站下载微信小程序开发详细步骤
  • 网站被挂马做js跳转网址大全下载