如何在请求结果中使用变量遍历数据?

时间:2019-01-05 15:48:45

标签: javascript

我正在向API发出请求,在该请求中,我正在插入变量。它工作正常,我得到了结果,但是我需要遍历结果,但是结果在正文之后的第一部分是我在调用中使用的动态部分。

我已经尝试使用模板文字插入变量以遍历正文。

const symbols = argv.sym;

request(
  {
    url: `https://api.iextrading.com/1.0/stock/market/batch?symbols=${symbols}&types=quote,chart&range=1d&chartInterval=30`,
    json: true
  },
  (error, response, body) => {
    console.log(JSON.stringify(body, undefined, 2));
    console.log(`Company is: ${body.symbols.quote.companyName}`);
  }
);

第一个console.log工作正常,但是第二个console.log在我尝试遍历动态符号时失败。

示例JSON结果在这里:

https://api.iextrading.com/1.0/stock/market/batch?symbols=atvi&types=quote,chart&range=1d

1 个答案:

答案 0 :(得分:1)

这是一个可行的解决方案。您没有正确遍历JSON。

const symbols = "atvi";

fetch(`https://api.iextrading.com/1.0/stock/market/batch?symbols=${symbols}&types=quote,chart&range=1d`)
.then(res=>res.json())
.then(data=>{
  console.log(data[symbols.toUpperCase()].quote.companyName);
});