有什么方法可以跟踪我在 JavaScript 中使用工厂函数创建了多少个对象?
Is there any way to keep track of how many objects I have created with a factory function in JavaScript?
假设我有一家这样的工厂:
const itemFactory = () => {
const itemName = ''
const firstMethod = () => {
// something goes here
}
return { itemName, firstMethod }
}
有什么方法可以跟踪我使用该功能创建了多少项?
我想在每个项目的 itemName
属性 中包含一个索引,如下所示:item0
、item1
、item2
等
您可以使用高阶函数来实现:
const createItemFactory = () => {
let currentItem = 0;
return () => {
const itemName = 'item' + currentItem++;
const firstMethod = () => {
// something goes here
}
return { itemName, firstMethod };
}
}
然后您可以创建 itemFactory
:
const itemFactory = createItemFactory();
const item0 = itemFactory();
console.log(item0.itemName); // item0;
const item1 = itemFactory();
console.log(item1.itemName); // item1;
假设我有一家这样的工厂:
const itemFactory = () => {
const itemName = ''
const firstMethod = () => {
// something goes here
}
return { itemName, firstMethod }
}
有什么方法可以跟踪我使用该功能创建了多少项?
我想在每个项目的 itemName
属性 中包含一个索引,如下所示:item0
、item1
、item2
等
您可以使用高阶函数来实现:
const createItemFactory = () => {
let currentItem = 0;
return () => {
const itemName = 'item' + currentItem++;
const firstMethod = () => {
// something goes here
}
return { itemName, firstMethod };
}
}
然后您可以创建 itemFactory
:
const itemFactory = createItemFactory();
const item0 = itemFactory();
console.log(item0.itemName); // item0;
const item1 = itemFactory();
console.log(item1.itemName); // item1;