JavaScript中的构造函数

Posted 量变 => 质变

tags:

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

构造函数

??ECMAScript 中,构造函数与其他函数的唯一区别,就在于调用它们的方式不同。不过,构造函数毕竟也是函数,不存在定义构造函数的特殊语法。任何函数,只要通过 new 操作符来调用,那它就可以作为构造函数,如果不通过 new 操作符来调用,那它跟普通函数也不会有什么两样。

??ECMAScript 中的构造函数可以分为 原生构造函数自定义构造函数。原生构造函数有 Object、Array、Date …,在运行时会自动出现在执行环境中。此外,也可以创建自定义的构造函数,从而定义自定义对象类型的属性和方法。

??按照惯例,构造函数始终都应该以一个大写字母开头,而非构造函数则应该以一个小写字母开头。

??构造函数本身也是函数,只不过可以用来创建对象而已。

function Person(name, age, job) {
  this.name = name;
  this.age = age;
  this.job = job;

  this.printName = function() {
    console.log(this.name);
  }
}

var person = new Person(‘Nicholas‘, 29, ‘Software Engineer‘);

使用 new 操作符来调用构造函数,会经历以下4个步骤:
① 创建一个新对象
② 将构造函数的作用域赋值给新对象(因此 this 就指向了这个新对象)
③ 执行构造函数中的代码(为这个新对象添加属性)
④ 返回新对象

以上是关于JavaScript中的构造函数的主要内容,如果未能解决你的问题,请参考以下文章

在 Visual Studio 中创建构造函数的代码片段或快捷方式

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段

片段事务中的实例化错误

Python代码阅读(第38篇):根据谓词函数和属性字符串构造判断函数

JavaScript学习笔记(散)——继承构造函数super