美文网首页
Js面向对象继承

Js面向对象继承

作者: 光头小青蛙 | 来源:发表于2019-07-09 11:05 被阅读0次

面向对象编程

JavaScript是一个不完全面向对象的弱类型语言,它里面的数据都可以看成对象。JavaScript是通过原型(prototype)来实现面向对象编程。

继承

只有new的实例化对象才能拿到构造函数的所有的方法,包括原型对象上的。

  • 使用原型继承,缺点把私有的(构造函数内部定义的)和公共的(原型对象上定义的)全部放在了子构造函数的原型对象
function Person(){
    this.name='小明';
}
function Study(){
    this.gender='男'
}
Person.prototype=new Study();
var res=new Person();
console.log(res.gender)
  • 使用call/apply继承,缺点只能拿到构造函数内部定义的属性和方法,拿不到原型上的属性方法。
function Person(){
    Study.call(this)
    this.name='小明';
}
function Study(){
    this.gender='男'
}
Study.prototype.age=123
var res=new Person();
console.log(res,Study.prototype)
  • 利用空对象作为中介继承
function Person(){
    this.name='小明';
}
function Study(){
    this.gender='男'
}
Study.prototype.age=12
function F(){};
F.prototype=Study.prototype;
Person.prototype=new F();
var res=new Person();
console.log(res.age)

相关文章

  • JS汇总---面向对象&数组

    面向对象 js原型链的继承 静态属性怎么继承 js原型链以及特点 面向对象有哪几个特点 封装,继承,多态 对象的继...

  • JS_继承进阶

    day19_JS_继承进阶 1.JS中的继承 继承是面向对象中一个比较核心的概念。其他正统面向对象语言都会有两种方...

  • 面向对象五

    面向对象高级二 总结 PHP 里的面向对象、继承方式 JS 里的继承方式 call(构造函数伪装) 和 proto...

  • js面向对象、继承

    1、获取地址栏参数 2、math 3、单体创建对象 4、工厂模式创建对象 5、构造函数 6、原型模式 7、call...

  • JS面向对象(继承)

    1.什么继承? 继承就是某个对象可以访问另一个对象的属性和方法,我们认为他们之间存在继承关系。 举例: 2.继承主...

  • js面向对象_继承

    1、//call继承 } 2、//原型继承 3、//组合继承 4、//冒充继承

  • Js面向对象继承

    面向对象编程 JavaScript是一个不完全面向对象的弱类型语言,它里面的数据都可以看成对象。JavaScrip...

  • JS继承的实现的几种方式

    前言 JS作为面向对象的弱类型语言,继承也是非常强大的特性之一,那么如何在JS实现继承呢? JS继承的实现方式 既...

  • class-继承(es6)

    继承-JS 继承-class class-总结 Class 在语法上更加贴合面向对象的写法Class 实现继承更加...

  • 学习总结目录

    javascript基础 js数据类型面向对象继承js的this指向自己实现call,apply,bindjs事件...

网友评论

      本文标题:Js面向对象继承

      本文链接:https://www.haomeiwen.com/subject/cantkctx.html