Javascript 网页包:重复模块加载是否效率低下?

Javascript 网页包:重复模块加载是否效率低下?,javascript,module,three.js,webpack,bundler,Javascript,Module,Three.js,Webpack,Bundler,据我所知,webpack(和其他类似的捆绑包)确保如果应用程序的多个部分需要相同的模块: 该代码将只加载一次 每次需要相同的模块时,都会创建一个新实例,而不是所有实例都共享相同的范围 首先,我的上述假设是否正确?如果是这样的话,那么创建同一模块的多个实例是否不利于优化 在我的示例中,我正在创建一个将使用ThreeJS的应用程序。这是一个相当大的图书馆。我的应用程序中的许多模块都需要此库 继续要求这样的图书馆是一种不好的做法吗?或者我应该在模块之间传递一个实例,而不需要多次 如果这确实是一个问

据我所知,webpack(和其他类似的捆绑包)确保如果应用程序的多个部分需要相同的模块:

  • 该代码将只加载一次
  • 每次需要相同的模块时,都会创建一个新实例,而不是所有实例都共享相同的范围
首先,我的上述假设是否正确?如果是这样的话,那么创建同一模块的多个实例是否不利于优化

在我的示例中,我正在创建一个将使用ThreeJS的应用程序。这是一个相当大的图书馆。我的应用程序中的许多模块都需要此库

继续要求这样的图书馆是一种不好的做法吗?或者我应该在模块之间传递一个实例,而不需要多次

如果这确实是一个问题,我很想知道是否有处理这个问题的共同模式。

这个假设:

每次需要相同的模块时,都会创建一个新实例, 而不是共享同一范围

错误的原因有两个:

  • 是否创建实例取决于所需模块返回的内容(它可能不返回任何内容)
  • 即使模块初始化实例,也只会创建一个实例,因为模块中的代码只运行一次
尽管如此,多次需要相同的模块应该不会对性能产生影响