在我的项目中,我通常会在我的所有 JS 对象前加上我的项目名称,如果我的项目是 XXX
,我会将我所有的库作为 XXX.search
,XXX.popup
, XXX.login
, XXX.login.sso
等..所以我所有的对象都在 XXX
。基本上我正在用很多模块加载我的 XXX
对象。所以 xxx
对象变得很大。
无论如何它会影响JS性能吗?
什么是好的做法,将每个模块分开或将所有模块都放在我的对象下。
或者两者都提供相同的性能效果并不重要?
最佳答案
使用 Object
实现命名空间是一种非常常见的 JavaScript 模式。在 JavaScript 中几乎所有东西都是对象,所以我看不出使用对象字面量来命名事物会产生任何显着的额外成本。即使使用对象作为命名空间的成本很高,我认为使用干净代码的好处会超过它。
Addy Osmani 写了很多关于这些主题的文章。我建议你开始 his article on the subject如果你遇到麻烦。还要记住,有许多对象可以替代 namespace ,例如 immediately invoked function expressions (尽管这些也会产生成本)。
关于Javascript 对象重量/大小影响性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33697916/