gpt4 book ai didi

javascript - 单例模式的异步数据

转载 作者:行者123 更新时间:2023-12-02 22:40:53 25 4
gpt4 key购买 nike

我被要求创建一个单例,该单例将具有对其保存的某些数据进行操作的方法。数据是从附近的 CSV 文件加载的,但我找不到以异步方式执行此操作的方法。

这是一个普通的 JavaScript 作业。我有这个 CSV 文件,我只想加载/读取一次,然后“保存”在我的单例中。由于所有单例方法都考虑此数据,因此我认为没有理由在一开始就多次读取它。由于读取(和解析)它是一项异步工作,一些预期的方法也是如此,我找不到正确的方式/地点/方法来完成它。搜索互联网表明,如果我选择创建一个类,构造函数一定不能是异步的。IIFE 模式也不适合我......

不幸的是,我目前没有代码,因为似乎什么都不起作用。

任何帮助将不胜感激!

最佳答案

有几种方法可以做到这一点。所有的方法都很好,所以这是个人喜好。

1。静态方法

class CsvHandler {
static readFile(fileName) {
return new Promise(resolve => {
const instance = new CsvHandler()
// Process your csv file here
resolve(instance);
}
}
}
const csvHandler = CsvHandler.readFile('fileName.txt')

2。工厂方法

class CsvHandler {}

class CsvFactory {
readFile(fileName) {
return new Promise(resolve => {
const instance = new CsvHandler()
// Process your csv file here
resolve(instance);
}
}
}

var csvFactory = new CsvFactory(),
csvHandler = csvFactory.readFile('fileName.txt')

关于javascript - 单例模式的异步数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58591433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com