JavaScript工厂函数到底是什么?

问题描述 投票:-1回答:1

JavaScript中的factoryfunctions到底是什么?它解决什么问题?什么是实时示例?

javascript function factory
1个回答
0
投票

工厂函数是一个正常的函数,它将建立一个对象并返回它。例如,我们可以通过以下方式创建人员界面/类:

function createPerson(name,age)
{
   let per  = new Object();
   per.name = name;
   per.age  = age;
   per.sayName() = function(){
                      return this.name;
                      };
  return per;
}

使用这种工厂功能模式,您可以通过以下方式创建人员的新实例:

let myNewPerson = createPerson("Nick",20);

此模式的主要问题是,在原型上没有提供函数属性,而是为每个函数属性创建了一个新对象(匿名函数是一个对象,一个Function的实例)。此外,这种模式不能解决对象识别的问题,即无法说出对象是什么类型的对象。

© www.soinside.com 2019 - 2024. All rights reserved.