1.工厂模式
function fn(a, b) {
let obj = new Object()
obj.a = a
obj.b = b
return obj
}
let test = fn(1, 2)
2.构造函数模式
function Fn1(a, b) {
this.a = a
this.b = b
this.c = function () {
console.log(this.a);
}
}
let test1 = new Fn1(1, 2)
let test2 = new Fn1(1, 2)
3.使用Object.create()创建
var parent = {
name: 'Parent',
sayHello: function () {
console.log('Hello, I am ' + this.name + '.');
}
};
var child = Object.create(parent);
console.log(child.name);
4.使用原型模式
function Person(name, age) {
this.name = name;
this.age = age;
}
Person.prototype.sayHello = function () {
console.log('Hello!');
};
var person = new Person('John', 25);
5. 使用字面量声明
var person = {
name: 'John',
age: 25,
sayHello: function () {
console.log('Hello!');
}
};