JavaScript 工厂函数到底是什么?
What exactly is JavaScript factory functions?
JavaScript 中的 factoryfunctions 到底是什么?它解决了什么问题?什么是实时示例?
工厂函数是一个构建对象并return它的普通函数。例如我们可以这样创建一个人interface/class:
function createPerson(name,age)
{
let per = new Object();
per.name = name;
per.age = age;
per.sayName() = function(){
return this.name;
};
return per;
}
使用这个工厂函数模式,您可以通过这种方式创建一个新的 person 实例:
let myNewPerson = createPerson("Nick",20);
此模式的主要问题是函数 属性 不在原型 trereby 中,为每个函数创建一个新对象(匿名函数是一个对象,函数的一个实例)属性。此外,这种模式没有解决对象识别的问题,即不可能说出一个对象是什么类型的对象。
JavaScript 中的 factoryfunctions 到底是什么?它解决了什么问题?什么是实时示例?
工厂函数是一个构建对象并return它的普通函数。例如我们可以这样创建一个人interface/class:
function createPerson(name,age)
{
let per = new Object();
per.name = name;
per.age = age;
per.sayName() = function(){
return this.name;
};
return per;
}
使用这个工厂函数模式,您可以通过这种方式创建一个新的 person 实例:
let myNewPerson = createPerson("Nick",20);
此模式的主要问题是函数 属性 不在原型 trereby 中,为每个函数创建一个新对象(匿名函数是一个对象,函数的一个实例)属性。此外,这种模式没有解决对象识别的问题,即不可能说出一个对象是什么类型的对象。