在es6中,新增了一个语法糖--class,可以说是为JavaScript引入了类的概念。而在传统的JavaScript中,则是通过构造器生成实例对象的。
JavaScript支持特殊的constructor(构造器)函数。通过在构造器函数前加new关键字,告诉JS使用该构造器实例化一个对象,并且对象成员在改构造函数中定义。
在构造器函数中,使用this关键字引用新创建的对象实例。
1.基本Constructor(构造器)
eg:
function Person(name, age,sex){ this.name=name; this.age=age; this.sex=sex; this.sayName=function(){ console.log(this.name); } } let p1=new Person('hello',20,'男'); p1.sayName();//hello
2.带原型(prototype)的constructor(构造器)
eg:
function Person(name, age,sex){ this.name=name; this.age=age; this.sex=sex; } Person.prototype.sayName=function(){ console.log(this.name) } let p1=new Person('hello',20,'男'); p1.sayName();//hello
参考:《JavaScript设计模式》Addy Osmani;