美文网首页Web前端之路
面向对象or基于对象?

面向对象or基于对象?

作者: ZoranLee | 来源:发表于2020-05-13 11:29 被阅读0次

JavaScript是面向对象语言还是基于对象的语言?这是一个问题


其他语言相比

  • ES6之后才有对象的概念,却没有类的概念
  • JavaScript对象里边能自由添加属性(其他语言不可以)

对象

  • 定义:可以触摸或者可以看见、人的智力可理解、可以指导思考或行动(进行想象或施加动作)的东西;( ------Grady Booch《面向对象分析与设计》)
  • 特征:
    • 有唯一标识性 (完全相同的两个对象,也并非同一个对象)
    • 有状态 (同一对象可能处于不同状态之下)
    • 有行为 (对象的状态,可能因为它的行为产生变迁)
image.png
  • JavaScript中,对象的状态和行为其实都被抽象为了属性(property);

两类属性

  • 数据属性

  • 访问器(getter/setter)属性

image.png
  • JavaScript 对象的运行时是一个“属性的集合”,是一个属性的索引结构

和其他基于类的面向对象不同的是JavaScript提供了完全运行时的对象系统,它可以模仿多数面向对象编程范式,所以它也是正统的面向对象语言

关于对象的描述

  • 类(如C++、Java)
  • 原型(JavaScript)
    基于原型体系早期产生的框架:PrototypeJS、Dojo

相关文章

  • Javascript-高级篇之面向对象

    面向对象 基于原型的面向对象 基于原型的面向对象方式中,对象(object)则是依靠构造器(constructor...

  • 【C++】C++学习笔记之十一:面向对象——类之间的三种关系

    C++中关于类的两个概念——基于对象和面向对象 基于对象 描述单个类 面向对象 面向对象编程——OOP(Objec...

  • 面向对象or基于对象?

    JavaScript是面向对象语言还是基于对象的语言?这是一个问题 其他语言相比 ES6之后才有对象的概念,却没有...

  • 介绍js中的原型

    原型 编程语言对面向对象的实现主流的有两种方式:基于类的面向对象和基于原型的面向对象。 基于类的面向对象 典型的语...

  • GeekBand笔记: C++面向对象高级编程(1)

    面向对象 Object Oritented 基于对象(Object Based) vs. 面向对象(Object ...

  • 对象和面向对象的介绍

    对象分为 面向对象和基于对象: 面向对象:面向对象定义: 可以创建自定义类型、很好的支持继承和多态。面向对象的语言...

  • 面向对象

    面向对象思想面向对象基本概述面向对象是基于面向过程的编程思想。面向对象:强调的是每一个功能的步骤面向对象:强调的是...

  • 2、面向对象

    一、面向对象 定义:面向对象是基于面向过程的。 面向对象与面向过程比较:面向过程:面向过程是以函数为基础,完成各种...

  • JavaScript进阶知识点--JS面向对象

    面向对象 对代码的一种抽象,对外同一提供调用接口的编程思想 基于原型的面向对象 基于原型的面向对象方式中,对象(o...

  • 面向对象还是基于对象?

    一些困惑 在学习JavaScript的过程中,我们常常遇到一些简单定义却又意义深远的概念。这些概念我们一开始接触时...

网友评论

    本文标题:面向对象or基于对象?

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