1.什么是构造函数
构造函数(Constructor)的创建方式和普通函数一样。但通常首字母进行大写,用于和普通函数区分。
但是当一个函数创建好以后,我们并不知道它是不是构造函数(即使函数名的首字母为大写)。只有当它以 new 操作符来调用的时候,我们才能说它是一个构造函数

2.构造函数的作用
构造函数的作用是新建实例对象,并且给实例对象内的成员(属性或方法)赋值。
在我们需要创建大量同一类型的对象时,这些对象都具有某些属性或方法,如果我们直接通过变量加字面量的形式进行赋值,会产生很多重复的代码。而当我们将这些对象抽象为一个类时,创建一个构造函数,就可以实现代码复用。
举个例子,我们要录入高中三班中每一位同学的个人信息,那么我们可以创建一些对象,比如:

3.像上面这样,我们可以把每一位同学的信息当做一个对象来处理。但是,我们会发现,我们重复地写了很多无意义的代码。比如 name、age、gender、hobby 。如果这个班上有50个学生,我们得重复写50遍。
这个时候,构造函数的优势就体现出来了。我们发现,虽然每位同学都有 name、gender、hobby这些属性,但它们都是不同的,那我们就把这些属性当做构造函数的参数传递进去。
我们就可以创建以下的函数

4.当创建上面的函数以后, 我们就可以通过 new 关键字调用,也就是通过构造函数来创建对象了。// 此时,程序会从当前作用域和上级作用域及以上作用域中寻找变量s,并不会去下级作用域中寻找

5.封装构造函数的过程会比较麻烦,但一旦封装成功,我们再创建对象就会变得非常轻松,这也是我们为什么要使用构造函数的原因。

构造函数的执行流程:
立即创建一个新的对象
将新建的对象设置给函数中的this,在构造函数中可使用this来引用新建的对象
逐行执行函数中的代码
将新建的对象作为返回值返回

这是我所学到的步骤,所以我要分享给你们,希望可以帮助到你们。

以上就是我的分享,新手上道,请多多指教。如果有更好的方法或不懂得地方欢迎在评论区教导和提问喔!