美文网首页
JavaScript面向对象的三大特性-来自于三人行慕课

JavaScript面向对象的三大特性-来自于三人行慕课

作者: 三人行慕课 | 来源:发表于2019-06-27 19:48 被阅读0次

原文链接:https://www.3mooc.com/front/articleinfo/133

封装性

封装性体现在2个方面:

(1)将自然界的事物,使用编程语言进行描述,就体现了封装性

例如:使用编程语言描述一个人:

姓名:周瑜

技能:玩火

使用PHP编程语言:

class Zhou{

  public $name = ‘周瑜’;

  public function playFire(){

 }

}

使用JavaScript编程语言描述:

Function Zhou(){

   This.name = ‘周瑜’;

   This.play = function(){

}

}

(2)将重用的代码,提取到公共的地方,体现了封装性

或者将变量、函数,使用对象进行收编

例如,下面的代码:

这种写法,有2点不足:

(1)就会在计算机的内存中创建3个对象:checkUser、checkPass、checkEmail

(2)上面的定义都是定义了3个全局变量,如果将来你在加载别的js文件的时候,容易出现全局变量被污染

针对上面所说的不足之处,我们就采用面向对象的封装性进行收编

这样,在内存中,只需要创建一个对象即可,其次,由于验证的功能,属于verify对象的,就减少了被污染的概率

除了上面的写法,我们还可以采用工厂的模式:

继承性:

JavaScript的继承性体现在prototype原型上面

例如:实现弹出框的功能,一个居中显示,一个右对齐显示,如果我们这样定义,就会在每个对象里面都维护一份create方法

如果我将create功能,提取到该构造器的原型身上,这样每个对象里面都是空的,需要改功能的时候,再从原型中继承而来

通常我们在封装一些可重用的插件的时候,都会将重用性强的代码,提取到原型中

不一样的地方(弹出框位置不一样),通过传参数实现

多态性:

多态性在弱类型的语言中,体现的不是很明显,但是在JavaScript中,多态性的体现就表现在this的使用上

同样一个对象this,在不同的环境下,代表的对象是不一样的,一个对象的多种状态

相关文章

  • JavaScript面向对象的三大特性-来自于三人行慕课

    原文链接:https://www.3mooc.com/front/articleinfo/133 封装性: 封装性...

  • 深入理解JavaScript之原型与原型链

    JavaScript是一门面向对象的语言,继承是面向对象的一大特性,但是严格来讲JavaScript中却没有通常含...

  • JavaScript的面向对象特性

    //通过“{}”创建对象,对象的成员以键值对的形式存放在{}中,多个成员之间使用逗号分隔。//封装:这些表单项,以...

  • Java编程中那些再熟悉不过的知识点(持续更新)

    本文来自于我的慕课网手记:Java编程中那些再熟悉不过的知识点,转载请保留链接 ;) 1. 面向对象和面向过程的区...

  • JavaScript基础系列之——继承

    一、基本概念: JavaScript基于原型实现面向对象特性,在JS编程中,面向对象的继承是重点,本文将从简单...

  • js面向对象

    JavaScript 是一门彻底的面向对象的语言。面向对象的概念:1:一切事物皆对象2:对象具有封装和继承特性3:...

  • js 面向对象编程

    JavaScript 是一门彻底的面向对象的语言。面向对象的概念:1:一切事物皆对象2:对象具有封装和继承特性3:...

  • 面向对象的继承

    继承--原型创建对象在面向对象的语言中,存在了三大特性—封装、继承、多态。我们前面一直说javascript是面向...

  • JavaScript 的对象及面向对象特性

    JS 的面向对象特性 一. 概念 类:有相同的特征和行为的事物的抽象 对象:类的一个实例 面向对象语言的要求:一种...

  • 第3章_函数

    绝大部分语言都有自己专门的面向对象的语法,而 JavaScript 没有:它是通过函数来实现面向对象特性的。 定义...

网友评论

      本文标题:JavaScript面向对象的三大特性-来自于三人行慕课

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