JavaScript高级 面向对象(13)--构造函数的执行过程

Posted Jacklovely

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript高级 面向对象(13)--构造函数的执行过程相关的知识,希望对你有一定的参考价值。

说明(2017-4-2 21:50:45)

一、构造函数是干什么用的:

1. 初始化数据的。

2. 在js给对象添加属性用的,初始化属性值用。

二、创建对象的过程:

1. 代码:var p = new Person();

2. 首先运算符new创建了一个对象,它类似于{},是一个“没有任何成员”的对象。

  * 使用new创建对象,对象的类型就是创建它的构造函数名(如,Person类型)。

  * 使用{}无论如何都是Object类型,相当于“new Object()”。

3. 然后调用构造函数为其初始化成员。

  *构造函数在调用的一开始,有一个赋值操作,即this=刚刚创建出来的对象。

  *因此在构造函数中,this表示刚刚创建出来的对象。

4. 在构造函数中,利用对象的动态特性,为对象添加成员。

三、分析代码,写出每一步的实现过程:

  在第2行打断点,但执行的时候是直接从第7行开始,因为7行是赋值,而2行只是函数声明。逐语句运行,在watch里可以看到this在慢慢增加属性,最后p具有了三个属性。

1 <script type="text/javascript">
2     function Person(name, age, gender){
3         this.name = name;
4         this.age = age;
5         this.gender = gender;
6     }
7     var p = new Person("张三", 19, "男");
8 </script>

 

以上是关于JavaScript高级 面向对象(13)--构造函数的执行过程的主要内容,如果未能解决你的问题,请参考以下文章

继承性—javascript面向对象高级

原型和原型链 —javascript面向对象高级

JavaScript高级,构造函数相关的问题详解

2020/06/06 JavaScript高级程序设计 面向对象的程序设计

聊聊javascript中的面向对象

javascript面向对象--创建对象