首页 > Web开发 > 详细

js的面向对象

时间:2019-02-18 13:37:48      阅读:277      评论:0      收藏:0      [点我收藏+]

一、什么是面向对象?
一切(万物)皆对象
简单点说,生活中有一些个物品,譬如说一个iPhone,我们也不知道里面的工作原理吧?但实际应用操作上几天,就会用了。
不需要知道原理就可以用它的功能,就是面向对象。
对象就是一个整体,对外提供一些功能和操作,而你不知道它内部是怎么操作的。在编程中我们叫面向对象。
二、面向对象特点
1、抽象:抽指把核心的东西抽出来,把与我们要解决的问题有关的东西拿出来摆在面前
2、封装:让使用对象的人不考虑内部实现,只考虑功能使用 把内部的代码保护起来,只留出一些个api接口供用户使用
3、继承:就是为了代码的复用,从父类上继承出一些方法和属性,子类也有自己的一些属性
4、多态:实际上是不同对象作用与同一操作产生不同的效果。多态的思想实际上是把“想做什么”和“谁去做“分开
三、对象的组成
1、方法 函数:过程、动态的
2、属性 变量:状态、静态的
四、this 当前的方法属于谁就是谁
this的指向在函数创建的时候是决定不了的,在调用的时候才能决定,谁调用的就指向谁
如果一个函数中有this,但是它没有被上一级的对象所调用,那么this指向的就是window
如果一个函数中有this,这个函数有被上一级的对象所调用,那么this指向的就是上一级的对象
如果一个函数中有this,这个函数中包含多个对象,尽管这个函数是被最外层的对象所调用,this指向的也只是它上一级的对象
this永远指向的是最后调用它的对象,也就是看它执行的时候是谁调用的
在严格版中的默认的this不再是window,而是undefined
例如点击事件里的this,其实就是触发事件的那个dom对象的onclick方法里的this,
再比如说一个函数里的this,这个函数都属于window的一个方法,当然里面的this也是window
一般不要在系统对象上面添加属性和方法,不太好,而是在object这个对象身上,别的date呀array呀,这些对象都是有一些个好玩的功能的,
object也就自己最强大的一个功能就是,没有功能~~~~ 这样咱们就可以随意给他加属性和方法而不用去想会不会覆盖了

js的面向对象

原文:https://www.cnblogs.com/EternalZH/p/10395000.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!