为了确保正确的隔离,我倾向于包装我在函数范围内编写的每个node.js模块:
(function() {
var express = require('express');
var jade = require('jade');
var moment = require('moment');
exports.someFunction = function() {
// do something
};
exports.otherFunction = function() {
// do something else
};
})();
Run Code Online (Sandbox Code Playgroud)
我已经这样做了一段时间,但我觉得node.js的模块系统实际上是为我做的,或者(换句话说)上面的代码等同于以下代码:
var express = require('express');
var jade = require('jade');
var moment = require('moment');
exports.someFunction = function() {
// do something
};
exports.otherFunction = function() {
// do something else
};
Run Code Online (Sandbox Code Playgroud)
两者真的相同吗?特别是,我想知道是否被隔离级别是相同的:都是express
,jade
或moment
局部变量的模块?(即,我想确保它们未在全局范围内定义或干扰此模块之外的任何其他定义).
归档时间: |
|
查看次数: |
3173 次 |
最近记录: |