只有一个 public 方法的单例有意义吗?

Does a singleton with only one public method make sense?

我有一个 class 只公开一个 public 方法,而且它是一个单例。

仅摆脱 class 并将属性和方法声明为全局变量和函数是否有意义?然后只导出一个“public”函数。

使用全局变量有什么问题吗?

一般来说,如果您的 class 有状态,请完全避免单例模式,因为它会变成 global state。但如果你不能(轻松):

Can I get rid of the class thing and declare properties and methods as variables and functions? And then exporting only the one "public" function?

是的,这对模块来说完全有意义。一个模块本质上已经是一个单例(它只被评估一次)。请注意,变量和函数不是全局的,它们的作用域是模块。