我写了一些代码,其中数据正在进入数组。在每个索引处,我都有另一个数组,该数组具有包含五个数据元素的数组。我想做的是在每个嵌套数组的末尾添加数据。
var allTimeStamps = [];
var allTimeStampsData = [];
$.getJSON( "https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=MSFT&apikey=demo", function( data ) {
const responseData = data;
for(let key in responseData["Time Series (Daily)"]){
allTimeStamps.push(key);
allTimeStamps.push(parseFloat((responseData["Time Series (Daily)"][key]["3. low"])));
allTimeStamps.push(parseFloat(responseData["Time Series (Daily)"][key]["1. open"]));
allTimeStamps.push(parseFloat(responseData["Time Series (Daily)"][key]["4. close"]));
allTimeStamps.push(parseFloat(responseData["Time Series (Daily)"][key]["2. high"]));
allTimeStampsData.push(allTimeStamps);
allTimeStamps=[];
}
console.log("seperatedData", allTimeStampsData);
});
我正在尝试这样的事情:
旧
allTimeStampsData[0].append("121");
新
allTimeStampsData[0].push("121");
我因为Python而写了append。我实际上是在尝试推动,但这不起作用。
我期望输出像:
[ ["08-2-2018",98,12,98,78,121] ,......]
最佳答案
最好的方法是在.map
属性的条目上使用简单的"Time Series (Daily)"
,从中可以提取日期和低/开/关/高:
fetch("https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=MSFT&apikey=demo")
.then(res => res.json())
.then(responseData => {
const daily = responseData["Time Series (Daily)"];
const keys = [
'3. low',
'1. open',
'4. close',
'2. high',
];
const allTimeStampsData = Object.entries(daily)
.map(([date, infoObj]) => (
[date, ...keys.map(key => infoObj[key])]
));
console.log(allTimeStampsData[0]);
console.log(allTimeStampsData);
});
关于javascript - 在JavaScript中访问嵌套数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51216166/