什么是面向对象

维基百科的面向对象

重点归纳

  • 面向对象思想中, 有两个主要的概念:
    • 类: 有相同的特征和行为的事物的抽象
    • 对象: 类的一个实例

      举个栗子:书籍是一个类,语文书是一个对象

  • 三大特点:
    • 封装:简单来说就是隐藏该隐藏的,暴露想暴露的
    • 继承:子类继承父类的属性和方法
    • 多态:同一个行为具有多个不同表现形式或形态的能力

什么是class

在oop编程语言中,class是oop实现信息封装的基础,类是一种用户定义引用数据类型,也称类类型。类的实例称为对象。

es5仿照Class

综上所述,js不是一个严格的面向对象语言,在es5时代可以说不是(个人理解),至少没有严格意义上的class,但是我们通过js原型可以实现,到这就有了构造函数这个名词,其实es5构造函数看上去就是一个普通的函数,