js基础面对对象

627 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第24天,点击查看活动详情

学习JavaScript入门,首先必须了解什么是面对对象的思想。这个在JavaScript学习中是相当重要的。但,这又不是业务开发所必须的,那学习面对对象的目的是什么呢?首先是要了解js里面是如何实现面对对象,进而深化面对对象思想,培养对面对对象的意识。

什么是对象

现实生活中——对象是某一个具体的事物

在编程中——对象是一个键值对的集合

{
  name : 'vivi',
  age : 12,
    sayHi : function(){
      console.log('你好,我叫'+this.name);
    }
}

我们见过的对象

document、window、元素...

这些对象都是可以直接使用属性和方法的——对象里面就是很多的键值对

键值对就是属性和方法

使用属性描述具体事物的特征,使用方法描述具体事物行为

比方说要描述一个具体的学生

var student = {
  name : 'vivi',
  age : 18,
  sayHi : function(){
    
  }
}

什么是面向对象

面向过程

关注实现的过程,关注过程中的每一步,什么事情都是亲力亲为

面向对象

面向对象其实就是面向过程的封装,面向对象就是找一个对象,指挥对象按照封装好的过程,去执行

面向对象的三大特性:

封装性

代码高度封装-把过程封装到函数,把函数封装到对象,你根本不需要关注过程是如何实现的,只需要管结果就可以了

继承性

把代码重复利用-生活中的继承,就是前代把一些东西共享给后代。在编程中,前辈把代码共享给后辈。类——分类,从大分类的对象把代码共享给小分类的对象——实现了代码的重复利用

多态性

多种状态——js本身是不支持多态的——限制只需要知道三大特性里面有一个多态就行,将来学习别的强类型语言的再理解