用于循环的JavaScript for object

时间:2018-02-05 10:28:04

标签: javascript node.js express for-loop

我使用Express来捕获'数据。我使用了put请求。我的要求是 localhost:3000 / units / 10,身体是:

{    
    "relayon0" : 400,
    "relayoff0" : 400 
}

我的代码是:

var bodyParser = require('body-parser');
var mysql = require('mysql');
var express = require('express');

var app = express();

var conn = mysql.createConnection({
    host : 'localhost',
    user : 'root',
    password : '',
    database : 'plc'
});

app.use(bodyParser.urlencoded({ extended: false }));

app.use(bodyParser.json());

app.put('/units/:id', function(req,res){

  var id = req.params.id;

  var relayon = [];
  var relayoff = [];

  for(var i = 0; i < 8; i++){
    relayon[i] = JSON.stringify(req.body.relayon + i);
    relay[i] = JSON.stringify(req.body.relayoff + i);
  }

  res.send(relayon[0]);
});

app.listen(3000);

响应返回null。

关于问题的任何想法?

1 个答案:

答案 0 :(得分:1)

您可能想要的是req.body['relayon' + i]req.body['relayoff' + i]

请求req.body.relayon + i会导致req.body.relayon(未定义)的值与数字一起添加,结果为NaN。通过字符串化,结果为"null"