【问题标题】:res.send displayed the wrong result but console.log give to the same response the correct resultres.send 显示错误的结果,但 console.log 给相同的响应正确的结果
【发布时间】:2021-08-29 18:47:09
【问题描述】:

我一直在尝试使用 res.send() 来显示响应,但它给我一个错误的结果,但是当 console.logging 相同的响应时它给了我正确的响应 (这不是预期的)。

代码如下:

var alldata = wc2014.rounds.concat(wc2018.rounds);
   
    for(i = 0; i < alldata.length; i++){
      var a = alldata[0].matches;
      var b = alldata[1].matches;
      var result = a.concat(b);
    }

   
   for (var key in result) {
      if(result[key].goals1.length > result[key].goals2.length){
        var team1 = result[key].team1.name; 
        console.log(team1);
      }
      else{
        var team2 = result[key].team2.name;
        console.log(team2); 
      }
    }  

    res.send(team1 || team2);

console.log

德国
法国

res.send()

法国

【问题讨论】:

    标签: javascript node.js


    【解决方案1】:

    在你的“for”循环之外试试这个:

    console.log(team1)
    console.log(team2)
    console.log(team1 || team2)
    

    结果是:

    France
    Germany
    France
    

    这意味着team1的值是法国,team2也是德国 "(team1 || team2) " => 如果 team1 不为空,则等于 team1 如果 team1 为空或任何虚假值,则语句等于 team2 并且因为 team1 有一个值(法国) res.send (team1 || team2) 类似于 res.send(team1) ,它会发送“France”作为响应。

    【讨论】:

    • 但我也试过这个:for (var key in result) { if(result[key].goals1.length &gt; result[key].goals2.length){var team1 = result[key].team1.name; console.log(team1);res.send(team1);}else{var team2 = result[key].team2.name; console.log(team2); res.send(team2);}} 它不工作
    • 最后我会在ejs中传递这些数据
    • 我试过这个并解决了这个问题:var items = []; for (var key in result) { if(result[key].goals1.length &gt; result[key].goals2.length){var team1 = result[key].team1.name; console.log(team1);}else{var team2 = result[key].team2.name; console.log(team2);}items.push(team1 || team2);} res.render('index',{ data: items }); 我使用 push() 方法。 push() 方法将新项目添加到数组的末尾,并返回新的长度。
    猜你喜欢
    • 2021-10-07
    • 1970-01-01
    • 1970-01-01
    • 2020-03-30
    • 1970-01-01
    • 2012-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多