工厂模式

/**
 * 工厂模式
 * 1、优点
 *    解决了创建多个相似对象的问题
 * 2、缺点
 *    没有解决对象识别的问题(即怎样知道一个对象的类型)
 */

function factory (name, sex, job) {
  const o = new Object()
  o.name = name
  o.sex = sex
  o.job = job
  o.speak = function () {
    console.log('hello...')
  }
  return o
}

// 直接用函数封装生成对象,并不是用 构造函数 来实现
const f1 = factory('tang', 'man', 'web design')
const f2 = factory('chen', 'womam', 'teacher')

console.log(f1)
console.log(f2)

你可能感兴趣的:(工厂模式)