Elm*_*lmo 10 javascript code-structure code-design node.js express
我在我的项目中使用Underscore.js.几乎所有文件都有这行代码:var _ = require('underscore').该require函数是同步的,因此每次使用时都会加载相同的文件.这是正确的做法吗?这不会影响性能吗?
而不是这样,可以在app.js文件中定义一个全局变量吗?
_ = require('underscore')
Run Code Online (Sandbox Code Playgroud)
我已经读过你不应该使用全局变量,但这似乎是一个有效的用例.
For*_*ord 25
从node.js文档:
模块在第一次加载后进行缓存.这意味着(除其他外)每次调用require('foo')将获得完全相同的返回对象,如果它将解析为同一个文件.
多次调用require('foo')可能不会导致模块代码多次执行.这是一个重要的特征.有了它,就可以返回"部分完成"的对象,从而允许加载传递依赖,即使它们会导致循环.
因此,多次调用require underscore不会影响性能,因为它将加载模块的缓存版本.
资料来源:https://nodejs.org/api/modules.html
| 归档时间: |
|
| 查看次数: |
2589 次 |
| 最近记录: |