Node.js Express

我有一个快递服务器,我想写一些类似的东西

for(p in params) app.get("/"+p,function (req, res) {res.send(p)}); 

现在,params [0]请求到达,但是响应是params [n-1]

您可以使用匿名函数在每次迭代中复制“p”。

 var http = require('http'); var express = require('express'); var app = express(); var params = { 'a' : 1, 'b' : 2, 'c' : 3 }; for (p in params) { (function (p) { app.get('/' + p, function (req, res) { res.send(p); }); })(p); } http.createServer(app).listen(1339, '0.0.0.0');