Articles of 全局

global和GLOBAL在节点上有什么区别?

我正在寻找使用node.js做现有的,基于浏览器的代码的一些testing。 我正在testing的一些代码查看其他函数的全局范围。 (由于各种原因,我不能更改此代码。) 看来,我可以分配给global.foo使foo全局可用。 这将让我加载适当的库到适当的地方。 似乎在节点中有两种全局对象: global和GLOBAL 。 global和GLOBAL什么区别? (当然,我们不能这样做,官方的节点文档似乎没有提到GLOBAL ,但它存在于运行时,并在networking上被提及。)

全球在NodeJS应用程序

我在一个NodeJS应用程序上工作,我有不同的模块,在这些模块不同的软件包,因为这些软件包正在使用其他软件包的function,我有一个问题,需要控制器到处都是,所以我做的是,我全球化这些控制器, 例如 global.CTRLS = { userCtrl : [require('./User/profile/controller/profileCtrl')] , productCtrl : [require('./Product/Products/controller/productCtrl')] } 所以我的问题是 在将这些控制器全球化的过程中是否有任何性能问题,对我的应用程序是否会有任何性能影响? 如果使用全球性问题,可以采用其他更好的方法吗?

在nodejs模块中,“this”是什么意思?

我有一个简单的代码,如下所示,并将其作为节点模块执行: console.log(this); module.exports = {…}; 我知道global是默认的上下文(如浏览器中的window ),但是this关键字是指什么?

我如何访问浏览器中的全局对象?

我试图在浏览器中inputglobal和Global 。 都导致ReferenceError:未定义的variables。 我知道浏览器的window是全局对象的别名。 我也知道,node.js的global在服务器端JavaScript是一样的。 global似乎在浏览器中无法访问,并且window.js中的window似乎不可访问。 是否有任何标准的方式来访问在这两种环境中工作的全球范围?

找不到模块'sails'

我正在尝试运行Webstorm 7.0.3的sails应用程序。 这出现在我尝试在控制台日志中运行服务器时: module.js:340抛出err; ^ Error:在Module.require(module.js:364:15)的Function.Module._load(module.js:280:25)处的Function.Module._resolveFilename(module.js:338:15)处找不到模块'sails' 17)在要求(module.js:380:17)在对象。 (module.js:474)在Module._compile(module.js:456:26)上的位置(C:\ Users ** \ projects \ WebstormProjects ** \ app.js:2:1) (module.js:497:10)在Module.runMain [as_onTimeout]的Function.Module._load(module.js:312:12)处的Module.load(module.js:356:32) 处理完成退出代码8 我安装了全球风帆。 我知道这是不工作,因为它无法find项目的本地“node_modules”目录中的sails模块。 如果再次安装'帆'本地它将工作。 但我不想… 有没有办法使它与全球安装帆? 谢谢!

全局对象/作用域和未定义的循环引用

我不确定我是否了解这几个经验的结果: 经验n°1(在新的命令行中): > _ ReferenceError: _ is not defined at repl:1:2 at REPLServer.self.eval (repl.js:110:21) at Interface.<anonymous> (repl.js:239:12) at Interface.EventEmitter.emit (events.js:95:17) at Interface._onLine (readline.js:202:10) at Interface._line (readline.js:531:8) at Interface._ttyWrite (readline.js:760:14) at ReadStream.onkeypress (readline.js:99:10) at ReadStream.EventEmitter.emit (events.js:98:17) at emitKey (readline.js:1095:12) > global { global: [Circular], … _: [Circular], } > _ { global: [Circular], … _: [Circular], […]

从nodejs中的string调用函数

与nodejs中的window [my_func_name]等效的是什么? 我正在从stdin读取一个string,如果它是一个函数名称,我想执行它。 我认为全球[my_func_name]可能工作,但不幸的是它不。

NodeJS(Express.js):如何使会话全局

我知道全局variables在JavaScript和整体编程方面是一个不好的做法,但是我想让我的用户会话在我的express.js应用程序中可用,避免必须从我的控制器传递会话参数到我的模型。 我怎么能最好的做到这一点? 谢谢!

每个HTTP /会话请求的GLOBAL数据?

题: 有没有办法在每个会话/ http请求中创build一个variables存储? 该variables必须是全局可访问的,并且不同的每个HTTP请求/连接/会话,并且不需要从function传递到function。 例如(只是为了说明): setVariableThatCanBeAccessedByThisHTTPRequestOnly( 'a string data' ); 任何东西都应该可以工作,但我宁愿远离将它从function传递到function。 //I'm trying to get rid of passing req parameter to all custom functions. //I'd like to store it in a variable somehow, that it can be accessed globally, but only within that session/request. exports.functionName = function( req, res ) { customFunctionThatRequiresReq( req ); }; […]

在node.js中共享对象并避免全局性

在我的路由器/控制器中,在下面的片段( dbvariables)中共享数据库连接的最合适的方式是什么,而不将dbvariables转换为全局variables? var mongo = require('mongoskin'), db = mongo.db(config.db.adress); app.use(function(req, res, next) { db.open(function(err, data) { (err) ? res.send('Internal server error', 500) : next(); }); }); // Setting up controllers here app.post('/users', require('./controllers/users').create); 来自PHP的背景,我来思考dependency injection ,但我不知道如果这是适当的节点。