面向对象编程

面向对象编程思想:

面向过程编程
  解决问题的过程,按步骤进行,第一步做什么,第二步做什么,一步一步完成

面向对象编程
  找具有解决问题功能的对象,调用其功能,完成任务。如果对象不存在,则创建对象。 

面向对象与面向过程
  - 面向过程就是亲力亲为,事无巨细,面面俱到,步步紧跟,有条不紊
  - 面向对象就是找一个对象,指挥得结果
  - 面向对象将执行者转变成指挥者
  - 面向对象不是面向过程的替代,而是面向过程的封装

创建对象方式:

简单方式new Object

字面量方式

工厂函数

构造函数:

更优雅的工场函数-构造函数

解析构造函数代码的执行

  下面是具体的伪代码: 

构造函数示例

面向对象小案例: 点击按钮改变区块颜色

检查对象类型:

instanceof

let arr = []                      arr instanceof Array =>true  

hasOwnProperty()
  Object的hasOwnProperty()方法返回一个布尔值,判断对象是否包含特定的自身(非继承)属性。

原型prototype:


  构造函数、实例、引用变量、对象名,对象概念区分


 
更好的解决方案: prototype原型对象
  Javascript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象(原型对象prototype)。
  这个原型对象的所有属性和方法,都会被构造函数的实例访问(继承)。
  这也就意味着,我们可以把所有对象实例需要共享的属性和方法直接定义在 prototype 对象上。
  构造函数、实例、原型三者之间的关系


  属性成员的搜索原则
  实例对象读写原型对象成员
  更简单的原型语法
  原生对象的原型
  练习-选项卡 

原型链:

类class :

 

一切即对象:

 函数对象
  创建方式
  Function

普通对象
  实例对象
  原型对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值