Coding 第一奥义:面向对象编程

开发 前端
JavaScript 语言的对象体系,不基于“类” 创建对象,是基于构造函数(constructor)和原型链(prototype)。

[[430105]]

本文转载自微信公众号「勾勾的前端世界」,作者西岭 。转载本文请联系勾勾的前端世界公众号。

到底什么是面向对象编程

面向对象是软件程序设计开发的一种方法,一种编程范式,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。

模型是用来反映现实世界中事物特征的,是对事物特征和变化规律的一种抽象,通过建立模型而达到的抽象是人们对客体认识的深化。

什么是对象?

对象是对概念的具体化体现:一本书、一辆汽车、一个人都可以是对象,一个数据库、一张网页、一个与远程服务器的连接也可以是对象。

当实物被抽象成对象,实物之间的关系就变成了对象之间的关系,从而就可以模拟现实情况,针对对象进行编程。

编程中对象是一个容器,封装了属性(property)和方法(method)。

属性是对象的状态,方法是对象的行为(完成某种任务)。

比如,我们可以把 "动物" 进行抽象,使用“属性”记录具体的特征,比如“大小”、“形态”、“毛色”;使用“方法”表示动物的某种行为,比如 “奔跑”、“捕猎”、“跳跃。

举个小例子:

特征 (属性):满身猴毛,尖嘴竖耳,黄发金箍;

行为 (方法):耍金箍棒,踏筋斗云,上凌霄殿;

是谁 ???我不说。

你想到的不是孙悟空就是六耳猕猴,为什么你脑海里能出现一个画面,是因为我通过属性和方法描述了一个 “类”,而你的脑海里便出现了通过类具体生成的 “对象” 。

ECMAScript-262 把对象定义为:无序属性的集合,其属性可以包含基本值、对象或者函数。

严格来讲,这就相当于说对象是一组没有特定顺序的值。对象的每个属性或方法都有一个名字,而每个名字都映射到一个值。也可以将其简单理解为:数据集或功能集。

面向对象编程有三大特性:封装性、继承性、多态性,这三大特性你先有个印象就行,这需要我们学习完具体的语法规则之后,有了一定的使用经验才能再思考得出结论;

JavaScript 中的面向对象

JavaScript 语言本身的设计缺陷,误打误撞,成了解释最为彻底的“世界原本的样子”的计算机编程语言。

——西岭《凡人凡语》

Everything is object (万物皆对象),JS 语言中将一切都视为 对象 。

 

JavaScript 语言的对象体系,不基于“类” 创建对象,是基于构造函数(constructor)和原型链(prototype)。

 

责任编辑:武晓燕 来源: 勾勾的前端世界
相关推荐

2011-05-25 10:21:44

Javascript

2017-04-21 09:07:39

JavaScript对象编程

2012-01-17 09:34:52

JavaScript

2010-11-17 11:31:22

Scala基础面向对象Scala

2022-07-30 23:41:53

面向过程面向对象面向协议编程

2012-02-27 09:30:22

JavaScript

2012-12-13 11:01:42

IBMdW

2011-07-14 17:24:10

C++面向对象思想

2013-06-07 10:55:10

2010-07-13 13:06:41

Perl面向对象

2011-05-25 10:59:26

Javascript继承

2010-07-13 17:18:29

Perl面向对象编程

2010-07-16 17:23:57

Perl面向对象编程

2019-03-26 10:50:22

Python面向对象编程语言

2012-12-18 09:24:47

2023-12-11 15:32:30

面向对象编程OOPpython

2011-06-28 11:06:16

Scala

2023-01-10 09:06:17

2023-02-22 18:06:35

函数javascript面向对象编程

2023-11-30 08:00:54

面向对象面向切面
点赞
收藏

51CTO技术栈公众号