卖坚果的怪叔叔 卖坚果的怪叔叔
  • 首页
  • 技术
  • 生活
  • 记录
  • 朋友
  • 常用代码
  • 关于
首页 › 技术 › JavaScript之继承(未完待续)

JavaScript之继承(未完待续)

坚果大叔
2019-06-11 17:36:53技术阅读数 224

JavaScript之继承(未完待续)-卖坚果的怪叔叔

1. 原型链继承

从父级上继承,但是有个问题,如果有多个子类同时继承一个父类,如果改变其中一个子类,其余子类也会跟着改变,这种情况就和数组对象的浅拷贝一样。

function parents(){
    this.name = ['fuqin']
}

parents.prototype.getName = function() {
    console.log(this.name)
}

function child(){}

child.prototype = new parents()

let child1 = new child()

child1.getName() // ['fuqin']

let child2 = new child()

child1.name.push('haha')

let child3 = new child()

child1.getName() //  => ['fuqin', 'haha']
child2.getName() //  => ['fuqin', 'haha']
child3.getName() //  => ['fuqin', 'haha']

2. 构造函数继承

改进了原型链继承的缺点,不会因为某个实例的更改而导致所有继承实例的变化,但是也有它的缺点就是每次创建实例都会创建一遍方法。

function parents(){
    this.name = ['brother']
}

function child(){
    parents.call(this)
}

let child1 = new child()
let child2 = new child()

child1.name.push('haah')

let child3 = new child()

console.log(child1.name) // => ['brother', 'haah']
console.log(child2.name) // => ['brother']
console.log(child3.name) // => ['brother']

// 在构造函数继承中还可以通过call()传递参数

function parents(name){
    this.name = name
}

function child(name){
    parents.call(this,name)
}

let child1 = new child('hh,我是1')
let child2 = new child('hh,我是2')

child1.name // => 'hh,我是1'
child2.name // => 'hh,我是2'
继承
赞赏 赞(0)
本文系作者 @坚果大叔 原创发布在 卖坚果的怪叔叔。未经许可,禁止转载。
周末,天气很棒,瞎溜达
上一篇
周末出游
下一篇
今日天气
摸鱼日历
摸鱼人日历
近期文章
  • 猫🐱
  • Input 空格问题
  • Sort函数小Tips😁😃❤️😒😭😩😳
  • 🌎🌎🌎🌎🌎🌎🌎🌎🌎🌎🌎🌎
  • element-ui中的Select选择器中remote-method方法带自定义参数
归档
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年5月
  • 2021年4月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年3月
  • 2018年2月
  • 2017年12月
  • 2017年11月
  • 2017年9月
Input 空格问题
2022-06-22 10:52:44
16 0 0
Sort函数小Tips😁😃❤️😒😭😩😳
2022-06-20 15:09:29
18 0 0
element-ui中的Select选择器中remote-method方法带自定义参数
2022-05-27 16:13:19
109 2 1
CSS之GAP属性
2022-05-25 19:28:05
90 2 2
  • 0
博主

一枚佛系前端开发,会一丢丢摄影,喜欢折腾,爱好美食。分享点前端技巧、笔记以及各种有趣的APP和资源教程♥♥

友链
Lieme
公众号
西豆 崔欣 执行上下文 卖坚果的怪叔叔 集赞助手
Copyright © 2017-2022 卖坚果的怪叔叔

苏ICP备18048410号-2
  • 首页
  • 技术
  • 生活
  • 记录
  • 朋友
  • 常用代码
  • 关于
# WordPress # # CSS #
坚果大叔
198
文章
47
评论
116
喜欢