JavaScript创建对象的方法

70 阅读1分钟

1、工厂模式

// 1、工厂模式
function Person(name, age) {
  var obj = {};
  obj.name = name;
  obj.age = age;
  obj.sayName = function() {
    console.log(obj.name);
  }
  return obj;
}

2、构造函数模式

function Person(name, age) {
  this.name = name;
  this.age = age;
  this.sayName = function() {
    console.log(this.name);
  }
}

3、原型模式

function Person() {

}
Person.prototype = {
  constructor: Person,
  name: 'Jane',
  age: 22,
  sayName: function() {
    console.log(this.name)
  }
}

4、组合构造函数和原型模式

function Person(name, age) {
  this.name = name;
  this.age = age;
}
Person.prototype = {
  constructor: Person,
  sayName: function() {
    console.log(this.name);
  }
}