1、构造函数的原型

每一个构造函数都有一个属性--原型/原型对象,所以通过Student构造函数创建的对象,可以访问Student.prototype中的成员。

2、对象的原型

2.1、当调用对象的属性或者放大的时候,先去找对象本身的属性/方法,如果对象没有改属性或方法,此时去调用原型中的属性/方法,如果对象本省没有该属性/方法,原型中也没有该属性/方法,就会报错。

2.2、对象中的constructor记录了创建该对象的构造函数

3、构造函数、原型对象、实例/对象三者之间的关系

构造函数创建对象,构造函数拥有原型对象,对象也拥有原型对象,原型对象中的constructor记录了创建该对象的构造函数,指回原型对象所在的函数,且Student.prototype === s1._proto_,如下图所示

4、原型链

5、组合继承(借用构造函数 + 原型继承)

通过原型让子类型继承父类型中的方法,使用构造函数继承父类型中的属性

什么是原型、原型链、组合继承?相关推荐

  1. [js高手之路]从原型链开始图解继承到组合继承的产生

    于javascript原型链的层层递进查找规则,以及原型对象(prototype)的共享特性,实现继承是非常简单的事情 一.把父类的实例对象赋给子类的原型对象(prototype),可以实现继承 1 ...

  2. ES5常用的组合继承及原型链理解

    ES5常用的组合继承及原型链理解 <!DOCTYPE html> <html lang="en"><head><meta charset= ...

  3. JavaScript中实现继承的方法(深入学习原型链、盗用构造函数、组合继承、原型式继承、寄生式继承、寄生式组合继承)

    一.原型链 原型链的基本思想就是通过原型继承多个引用类型的属性和方法. 构造函数.原型和实例的关系:每个构造函数都有一个原型对象,原型有一个属性指回构造函数,而实例有一个内部指针指向原型. 若原型是另 ...

  4. JS中对象的四种继承方式:class继承、原型链继承、构造函数继承、组合继承(构造函数和原型链继承的结合)

    前言 才发现之前没有对JavaScript中的继承做过总结,不过看得到是不少,接下来就对这几种继承方式做一下总结. class继承 class继承是ES6引入的标准的继承方式. ES6引入了class ...

  5. 对Javascript 类、原型链、继承的理解

    一.序言   和其他面向对象的语言(如Java)不同,Javascript语言对类的实现和继承的实现没有标准的定义,而是将这些交给了程序员,让程序员更加灵活地(当然刚开始也更加头疼)去定义类,实现继承 ...

  6. ES5-拓展 原型链、继承、类

    Symbol不是构造函数 Object不是原型是实例对象 他的构造器继承原型上的构造器 undefined是未定义 null是空指针 一.原型链 1. 函数也是实例对象 2. 构造函数Object是由 ...

  7. JavaScript原型链实现继承

    js 继承 原型链 默认的原型 确定原型和实例的关系 谨慎定义方法 原型链的问题 借用构造函数 组合继承 最常用的继承模式 原型式继承 寄生式继承 寄生组合式继承 是引用类型最理想的继承范式 学习记录 ...

  8. js原型链,继承和promis的基本理解

    List item 一.原型链 开局一张图 prototype 每个函数都有一个prototype属性,被称为显示原型 2._ proto _ 每个实例对象都会有_ proto _属性,其被称为隐式原 ...

  9. 前端进击的巨人(七):走进面向对象,原型与原型链,继承方式

    "面向对象" 是以 "对象" 为中心的编程思想,它的思维方式是构造. "面向对象" 编程的三大特点:"封装.继承.多态" ...

最新文章

  1. 最常见NLP任务练手项目汇总
  2. 2013高教社杯---B碎纸片的拼接复原
  3. job kettle 导出_kettle从hive2导出数据正常,但是用kettle manager启动就报错
  4. 几种典型的软件自动化测试框架
  5. Andriod Studio两种签名机制V1和V2的区别
  6. python对文件的处理_python文件处理fileinput使用方法详解
  7. 游戏视觉控壁纸党可以开始行动!
  8. 一步步实现SDDC-部署VC后的配置
  9. js 金额处理加小数点后两位
  10. java基本框架代码_Rxjava 源码系列 - 基础框架分析
  11. php:页面乱码的解决方法
  12. Java和python哪个好,学哪个有用。
  13. Tomcat设置编码方式
  14. Java项目Maven配置操作Pdf
  15. 数控技术 - 直线插补 - 数字积分法(DDA)
  16. 用C#实现自定义列表_艾孜尔江撰
  17. 2015 上海邀请赛c题 calculator hdu5238
  18. 打开掌柜宝怎么显示服务器繁忙,掌柜宝网关系统
  19. 在火星上,我们能种哪些菜?
  20. win10 keplerzl安装报错

热门文章

  1. 【国仁网络资讯】视频号密集更新:唤醒的是谁的梦?
  2. 27家中美名校借阅榜对比公开:差别太大了
  3. 采用OpenCV和深度学习的钢印识别
  4. 大学计算机应用b,西安理工大学《大学计算机应用》试题 B卷
  5. java android 计算两个日期之间的天数
  6. LocalDate 计算两个日期相差天数
  7. 使用图灵机器人做简单的聊天系统
  8. WebAssembly技术_在Web端运行C与C++程序(win10)
  9. Linux —— chown -R mysql:mysql ./及chown详解
  10. @Validated和@Valid使用