我开始使用Node.js,并且很难弄清楚节点支持哪个版本的JavaScript,这使得很难搞清楚我可以使用哪些function。 这是我所知道的。 节点使用V8 V8按照ECMA-262第3版的规定实现ECMAScript ECMA-262,第三版是JavaScript 1.5 鉴于此,我会假设我可以在节点中使用JavaScript 1.5兼容的代码。 然而,事实certificate我可以使用Array.forEach ,除了其他的构造,即使根据MDC它是不可用的,直到Javascript 1.6 – ECMA-262,第5版。 我哪里错了? 有没有文件详细说明可用的语言function?
我有这样的代码: var client = new mysql.Client(options); console.log('Icanhasclient'); client.connect(function (err) { console.log('jannn'); active_db = client; console.log(err); console.log('hest'); if (callback) { if (err) { callback(err, null); } callback(null, active_db); } }); 我的问题是,当我运行它时,节点立即终止。 它打印“Icanhasclient”,但是没有任何console.log在callback中被调用。 (这个例子中的mysql是node-mysql 。 有没有什么可以做的,使node.js退出之前等待callback完成?
我正在使用本教程构build一个使用Passport.js的身份validation系统。 我对passport.session()做了什么感到困惑。 玩过不同的中间件之后,我明白了express.session()是通过cookie向客户端发送会话ID的,但是我对passport.session()做了什么以及为什么需要除了express.session()。 以下是我如何设置我的应用程序: // Server.jsconfiguration应用程序并设置Web服务器 //importing our modules var express = require('express'); var app = express(); var port = process.env.PORT || 8080; var mongoose = require('mongoose'); var passport = require('passport'); var flash = require('connect-flash'); var configDB = require('./config/database.js'); //Configuration of Databse and App mongoose.connect(configDB.url); //connect to our database require('./config/passport')(passport); //pass passport for configuration app.configure(function() […]
我对node.js相当陌生,随着项目规模的扩大,我发现将项目分割成多个文件相当复杂。 我之前有一个大文件作为多人游戏HTML5游戏的文件服务器和Socket.IO服务器。 理想情况下,我想分离文件服务器,socket.IO逻辑(从networking读取信息并将其写入具有时间戳的缓冲区,然后发送给所有其他玩家)以及游戏逻辑。 使用socket.io中的第一个例子来演示我的问题,通常有两个文件。 app.js是服务器, index.html发送给客户端。 app.js: var app = require('http').createServer(handler) , io = require('socket.io').listen(app) , fs = require('fs') app.listen(80); function handler (req, res) { fs.readFile(__dirname + '/index.html', function (err, data) { if (err) { res.writeHead(500); return res.end('Error loading index.html'); } res.writeHead(200); res.end(data); }); } io.sockets.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my […]
我正在学习node.js和express,我想知道在./package.json文件中使用的属性“private”是什么?
场景 :请考虑以下是节点Web应用程序的部分代码。 app.get('/users/:id?', function(req, res, next){ var id = req.params.id; if (id) { // do something } else { next(); } }); 问题 :我正在检查哪一个去next()或return next() 。 对于上面的代码示例,两个代码的工作原理完全相同,在执行部分中没有任何区别。 问题 :有人可以放下什么时候使用next()什么时候使用return next()和一些重要的区别?
有没有办法确定你的package.json文件中是否有不再需要的包? 例如,当试用一个软件包,后来评论或删除代码,但忘记卸载它时,我最终得到了一些可以删除的软件包。 什么将是一个有效的方式来确定一个包是否可以安全地删除?
我正在尝试使用sinon.js存根方法,但是我得到以下错误: Uncaught TypeError: Attempted to wrap undefined property sample_pressure as function 我也去了这个问题( 在sinon.js中对stubbing和/或嘲笑类 ),并复制粘贴代码,但我得到了同样的错误。 这是我的代码: Sensor = (function() { // A simple Sensor class // Constructor function Sensor(pressure) { this.pressure = pressure; } Sensor.prototype.sample_pressure = function() { return this.pressure; }; return Sensor; })(); // Doesn't work var stub_sens = sinon.stub(Sensor, "sample_pressure").returns(0); // Doesn't work var […]
当gulp任务正在运行或运行时,我想要login到stdout(configuration环境)。 像这样的东西: gulp.task('scripts', function () { var enviroment = argv.env || 'development'; var config = gulp.src('config/' + enviroment + '.json') .pipe(ngConstant({name: 'app.config'})); var scripts = gulp.src('js/*'); return es.merge(config, scripts) .pipe(concat('app.js')) .pipe(gulp.dest('app/dist')) .on('success', function() { console.log('Configured environment: ' + environment); }); }); 我不知道我应该回应什么事件或在哪里find这些列表。 任何指针? 非常感谢。
我刚开始web开发,到目前为止我知道: HTML – 网站的布局 CSS – 让它看起来很漂亮 JavaScript – function 那么什么是jQuery , AngularJS和Node.js ? 经过快速search,我发现jQuery是一个“JavaScript库”,AngularJS是“基于JavaScript的开源前端Web应用框架”,而Node.js是“JavaScript运行时环境”。 他们似乎都与JavaScript相关,所以他们是新的语言? “框架/库”是什么意思? 一个简单的答案将不胜感激。 (我刚刚开始web编程,但我熟悉编程)。