我有一个来自站点https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=MSFT&outputsize=full&apikey=demo的json

看起来像

{
"Meta Data": {
    "1. Information": "Daily Prices (open, high, low, close) and Volumes",
    "2. Symbol": "MSFT",
    "3. Last Refreshed": "2018-07-03",
    "4. Output Size": "Full size",
    "5. Time Zone": "US/Eastern"
},
"Time Series (Daily)": {
    "2018-07-03": {
        "1. open": "100.4800",
        "2. high": "100.6300",
        "3. low": "98.9400",
        "4. close": "99.0500",
        "5. volume": "14670275"
    },
    "2018-07-02": {
        "1. open": "98.1000",
        "2. high": "100.0600",
        "3. low": "98.0000",
        "4. close": "100.0100",
        "5. volume": "19564521"
    }
}
}


您可以在“时间序列(每日)”中看到不同的日期对象。我想访问每个日期中的所有键,并希望将数据放入数组中。我使用的是javascript,不知道如何遍历这些不同的日期。

        console.log(data['TimeSeries (Daily)']['2018-07-03']);


这是我访问日期的方式,但是这是我要遍历每个日期的单个日期。

最佳答案

这将为您提供所需的输出

var tSeries=data['Time Series (Daily)'];
for(var tempData in tSeries)
{
    console.log(tSeries[tempData]);
    console.log(tSeries[tempData]['1. open']);
    console.log(tSeries[tempData]['2. high']);
}


更新资料

如果您需要访问日期并希望将它们放在单独的数组中

var tempDataStore = [];
var tSeries=data['Time Series (Daily)'];
for(var tempData in tSeries)
{
    // Here You get your Date
    console.log("Your Date - " + tempData);
    console.log(tSeries[tempData]);
    console.log(tSeries[tempData]['1. open']);
    console.log(tSeries[tempData]['2. high']);
    tempDataStore.push({"Date":tempData,"open":tSeries[tempData]['1. open']})
}

console.log(tempDataStore)

关于javascript - 从JSON解析和获取数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51176519/

10-10 09:42
查看更多