【问题标题】:How do I console.log json information?如何 console.log json 信息?
【发布时间】:2021-07-24 15:28:23
【问题描述】:

对于同时使用 api 和 javascript 还是很陌生。我正在尝试控制台。注销我的一个朋友死于锈病的次数,但所有项目都被命名为“名称:”我的意思的一个 img:

我用axios调用api,代码如下:

var statsApi = 'http://api.steampowered.com/ISteamUserStats/GetUserStatsForGame/v0002/?';
var statsAppId = 'appid='+252490+'&'
var statsSteamApiKey = 'key='+process.env.STEAM_API+'&';
var statsUserArg = 'steamid='+userID; 
                
var steamStatsApi = statsApi + statsAppId + statsSteamApiKey + statsUserArg;

axios
  .get(steamStatsApi)
  .then((res) =>{
      message.channel.send("AAAA");
      // console.log(res['data']['playerstats']['stats']['name' == 'deaths']);
      for(re in res['data']['playerstats']['stats']) {
          if(re['name'] === 'deaths') {
              console.log('test');
              console.log(re['value']);
          }
          else {
              console.log('Fel');
          }
      }
  })
.catch((err) => {
    console.error('Error:', err);
}) 

如果有人知道如何计算“死亡”的数量,我将不胜感激。

【问题讨论】:

  • 您能粘贴完整的服务器响应吗?整个 JSON 对象?我们真的无法提供屏幕截图。

标签: javascript json steam steam-web-api


【解决方案1】:

请检查此代码:

let res = [{ name: "deaths", value: 2694}, {name:"bullet_fired", value: 343328}];
let i = 0;

for(i=0;i<res.length;i++){ 
      if(res[i].name =="deaths"){ 
       console.log(res[i].value); 
      }
}

这里 res 变量将包含您的 json 值。

【讨论】:

    【解决方案2】:

    原来这很容易,如果有人遇到这个问题,只需使用我即将提供的以下代码:

    var index = -1;
    for(var i = 0; i < Object.keys(res['data']['playerstats']['stats']).length; i++) {
       if(res['data']['playerstats']['stats'][i]['name'] === 'deaths') {
          index = i;
          var userDeaths = res['data']['playerstats']['stats'][index]['value'];
          break;
       }
    }
    

    它的作用是遍历每个名​​为“name:”的对象,直到在其中一个对象中找到“死亡”。我将 i 更改为那个,现在我可以打印出我正在寻找的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-12
      • 2015-10-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多