面向对象的概念

什么是面向对象

●面向对象是一种编程的思想

面向过程和面向对象
●编程思想,在前端的编程世界里面一般把编程分为面向过程和
面向对象
●面向对象,首先,我们要明确,面向对象不是语法,是一个思想,是一种 编程模式或者说是编程思想
●面向: 面(脸),向(朝着)
●面向过程: 脸朝着过程 => 关注着过程的编程模式
○也就是说要分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了
●面向对象: 脸朝着对象 => 关注着对象的编程模式
○面向对象是把事物分解成一个个对象,然后由对象之间分工与合作
●实现一个效果
○在面向过程的时候,我们要关注每一个元素,每一个元素之间的关系,顺序,。。。
○在面向过程的时候,我们要关注的就是找到一个对象来帮我做这个事情,我等待结果
●例子 🌰: 我要吃面条
○面向过程
■用多少面粉
■用多少水
■怎么和面
■怎么切面条
■做开水
■煮面
■吃面
○面向对象
■找到一个面馆
■叫一碗面
■等着吃
○面向对象就是对面向过程的封装
●我们以前的编程思想是,每一个功能,都按照需求一步一步的逐步完成
●我们以后的编程思想是,每一个功能,都先创造一个 面馆,这个 面馆 能帮我们作出一个 面(完成这个功能的对象),然后用 面馆 创造出一个 面,我们只要等到结果就好了
●也就是说当你需要完成一个 "功能" 的时候,首先找到一个 对象, 这个对象内的成员能完成 "功能"
●如果没有这样的 对象, 想办法找到一个 "机器", 这个机器能创造对象
●能创造一个完成 "功能" 的对象
●总结来说就是利用这个 "机器", 创建一个对象,使用对象去完成 "功能"

面向过程和面型对象差异

●面向过程的优缺点
○优点:性能比面向对象高,步骤联系密切
○缺点:不好维护,不宜多次使用和扩展
●面向对象的优缺点
○优点:易维护、可复用、可扩展灵活性高
○缺点:性能没有面向过程高

创建对象的方式

●任务
○找到一个 "机器"
○能批量创造对象
○批量创建出来的对象, 属性名一样, 值不一样
○创建有属性有方法合理的对象*
●因为面向对象就是一个找到对象的过程
●所以我们先要了解如何创建一个对象后者说都有哪几种方式可以创建一个对象

内置构造函数创建对象

●js 给我们内置了一个 Object 构造函数
●这个构造函数就是用来创造对象的
●当构造函数 和 new 关键字连用的时候,就可以为我们创造出一个对象
●因为 js 是一个动态的语言,那么我们就可以动态的向对象中添加成员了
○动态语言(弱类型语言)
■动态语言是在运行时确定数据类型的语言。变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型。
■JavaScript能够动态修改对象的属性,没有办法在编译的时候知道变量的类型,只有在运行的时候才能确定

// 就能得到一个空对象
var o1 = new Object() 

// 正常操作对象
o1.name = 'Jack'
o1.age = 18
o1.gender = '男'


复制代码

字面量的方式创建一个对象

●直接使用字面量的形式,也就是直接写 {}
●可以在写的时候就添加好成员,也可以动态的添加

// 字面量方式创建对象
var o1 = {
  name: 'Jack',
  age: 18,
  gender: &
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值