JavaScript学习笔记(十六)——面向对象编程

在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意!

如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/学习。

面向对象编程

JavaScript的所有数据都可以看成对象,但是,如果我们仅仅使用 Number 、 Array 、 string 以及基本的 {...} 定义的对象,这也不能称为面向对象编程。

总所周知,面向对象有两个基本概念:

类是对象的类型模板,例如,定义 Student 类来表示学生,类本身是一种类型, Student 表示学生类型,但不表示任何具体的某个学生;

实例实例是根据类创建的对象,例如,根据 Student 类可以创建出 xiaoming 、 xiaohong 、 xiaojun 等多个实例,每个实例表示一个具体的学生,他们全都属于 Student 类型。

类和实例是大多数面向对象编程语言的基本概念。

但是,在JavaScript中,面向对象的概念并非如此:JavaScript中不区分类和实例的概念,而是通过原型(prototype)来实现面向对象编程

原型是指当我们想要创建 xiaoming 这个具体的学生时,我们并没有一个 Student 类型可用。那怎么办?恰好有这么一个现成的对象:

var robot = { name: 'Robot', height: 1.6, run: function () { console.log(this.name + ' is running...'); } };

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wssypz.html