Tag: 环境variables

奇怪的Javascript代码显示错误的数字

我在互联网上find了这个Javascript代码,但我不明白为什么它显示一个意外的数字: var foo = 5; var bar = 7; fоo = bar; bar += +!(foo – 5); console.log(foo = bar); // It displays 8 instead of 7 据我所知,我们定义了两个variablesfoo和bar ,它们的值分别为5和7 。 之后,我们从bar复制值到foo 。 在第四行, bar不会递增,因为+!(7 – 5) == +!2 == +false == 0 。 在最后一行, bar值再次被复制到foo然后显示,这意味着foo必须是7 。 但是,为什么控制台日志8呢?

如何通过dockerfile在ENTRYPOINT之前执行一个shell命令

我有我的nodejs项目的以下文件 FROM node:boron # Create app directory RUN mkdir -p /usr/src/app WORKDIR /usr/src/app # Install app dependencies COPY package.json /usr/src/app/ RUN npm install # Bundle app source COPY . /usr/src/app # Replace with env variable RUN envsubs < fil1 > file2 EXPOSE 8080 CMD [ "npm", "start" ] 我运行docker容器与-e标志提供环境variables 但我没有看到替代品。 当envvariables可用时,运行命令是否会被执行?

node.js模块variables是否跨多个调用共享?

即时通讯创build一个node.js服务器,我有一个“通知”模块。 节点服务器上的每个请求都会调用这个模块,我需要为每个单独的调用设置一组私有variables。 例如,当对通知模块发出请求时,需要记住用户ID,请求时间,会话ID等。 我怎样才能有效地做到这一点? 如果我简单地声明模块范围内的variables,他们似乎是为每个模块调用共享。 所以,它不能私下记住每个请求的数据。 我需要的是每次我调用一个node.js模块时,它会记住当时的数据。 所以,请指出我该怎么做? 谢谢, 安键 更新 node.js服务器将用作聊天服务器。 “通知”模块将扫描数据库中的新消息,并使用长轮询技术以json格式将输出发送到客户端。 我试图把数据和函数包装到一个对象中。 然后,每次向聊天服务器发出请求时,都会创build一个新的对象,并且它将继续执行所需的function。 但它所做的是不是并行工作,而是串行执行每个请求。 所以,如果我向服务器发出3个请求,他们只是排队并执行一个接一个。 任何线索呢? 模块源代码可以在这里find: http : //www.ultrasoftbd.com/notifications.js 谢谢,Anjan

节点JSvariables作用域

我有下一段代码 function Server() { function eventHandler(data) { console.log('DATA ' + this.server.socket.remoteAddress + ': ' + data); socket.write('You said "' + data + '"'); } function connectionHandler(socket) { console.log('server connected'); console.log('CONNECTED: ' + socket.remoteAddress +':'+ socket.remotePort); socket.on('data', eventHandler); } this.server = net.createServer(connectionHandler); this.port = undefined; this.startServer = function(port) { //Maybe change backlog for security reasons this.port […]

如何在nodeJs和compoundjs的app目录中将server.js的值传递给控制器

刚刚接触nodeJs, 我在server.js中声明了一个variables var globals = module.exports = function getLimits() { params = {}; if ( process.env.NODE_ENV == "production") { params.limits = 2; } else if (process.env.NODE_ENV == "development") { params.limits = 4; } else { params.limits = 6; } return params.limits } 在我的控制器上的应用程序目录我试图通过使用获得params.limits的价值 compound.globals 但我没有反正在我的控制器上获得全球价值。

在express / node中使用全局variables

试图find一个解决scheme,我发现了4个解决scheme,但我想知道哪一个更好/最好的做法。 为什么! :P 1.使用req.app.get() // app.js app.set('settings', { domain: 'http://www.example.org' }); // other file console.log(req.app.get('settings')); 2.使用req.app.settings(与上面类似) // app.js app.set('settings', { domain: 'http://www.example.org' }); // other file console.log(req.app.settings.settings); 3.导出应用程序对象,所以我可以访问app.get()没有req对象 // app.js app.set('settings', { domain: 'http://www.example.org' }); module.exports = app; // other file var app = require('../app'); console.log(app.get('settings')); 4.使用全局variables。 可能是个坏主意,但是…不是“设置”是一个全球性的东西吗? (我可以避免重复使用,所以我没有得到范围问题) // app.js settings = { domain: […]

将库声明为常量

在NodeJS世界中,我们需要使用require函数的模块: var foo = require ("foo"); 在JavaScript中(也在NodeJS中),我们有const关键字创build一个常量: const 创build一个常量,该常量可以是声明它的函数的全局或局部的。 常量遵循与variables相同的范围规则。 例: $ node > const a = 10 undefined > a 10 > a = 7 7 > a 10 我的问题是:将库作为常量是否会很好? 例: const foo = require ("foo") , http = require ("http") ; /* do something with foo and http */ 使用const而不是var时有什么不好/很好的效果,当需要库?

如何从npm脚本导出envvariables?

我知道我们可以声明envvariables在npm run命令运行的脚本中使用,像这样: TEMP_VARIABLE=value node app.js 但是,如果我需要在多个npm run脚本中使用声明的variables,那么每次都会重复指定variables的值,如下面的代码示例所示: "start": "SRC_DIR=src node src/app.js", "lint": "SRC_DIR=src jshint src/*.js", "coverage": "SRC_DIR=src istanbul cover –dir outputDir -i src/*.js" 有没有办法让我们可以使用npm run-script导出一个envvariables来允许如下所示: "scripts": { "set-env": "export SRC_DIR=src", # should export the env var to be used later "start": "node ${SRC_DIR}/app.js", # use the env var set earlier. "lint": "jshint ${SRC_DIR}/*.js" # use […]

获取http的Javascriptvariables

我正在学习JavaScript,并希望做相当于PHP的$_GET[Var] = $foo; 我正在为一个项目编写一个基本的CDNtypes的服务器,另外,如何用JavaScript下载文件以供下载? 计划是在NodeJS节点内运行这个代码。 对不起,如果我解释得很糟糕,我很难解释的东西。

理解Javascript Typeof

当我执行下面的代码,它打印“未定义”两次。 我期待它会引发错误,因为variables没有被定义,并且在顶部也有严格的使用声明。 'use strict'; var a; console.log(typeof a); console.log(typeof b); 任何人都可以解释为什么它没有提出一个错误?