JavaScript-1-5:对象、this

来源:互联网 发布:杜兰特里约奥运会数据 编辑:程序博客网 时间:2024/06/11 02:46
1、对象:
无序属性的集合,其属性可以包含基本值、对象或者函数

//面向对象编程,首要任务是创建对象。

创建任何对象,都需要一个模板。模板表示创建的对象应该具备什么样的基本功能和共同属性。
在传统的面向对象语言中,是用 ”类“ 来当作创建对象的模板的。JS在ES6之前,都没有 ”类“的概念。
JS是用 构造函数原型 来当作创建对象的模板的
构造函数:大写字母开头


构造函数(constructor):

构造函数和普通函数没有本质的区别,只是调用的方式不同。

使用new关键字调用函数,这个函数就当作构造函数;
不适用new关键字调用函数,这个函数就被当作普通函数。




2、this关键字:
1)在构造函数中使用:
this表示的是用构造函数创建的对象:

2)在全局函数中使用:


3)在对象的方法中使用:

this永远指向当前函数的调用者


一般情况下,我们喜欢 var that = this;

多层this应该注意的问题:



this 关键字在网页中的简单应用:




3、函数对象的callapply方法:
场景一:借用别人的方法

场景二:用于继承
继承:儿子获得爸爸的财产。 
面向对象程序设计:子对象获得父对象的公共属性或方法。
   

区别:
传递的参数不同,功能完全相同。
call方法传递的是具体的参数
apply方法传递的是装了参数的数组
本质:
让指定对象去调用本不属于它的方法。
如果该方法中使用了this,那么this就会改变指向。
 
原创粉丝点击