【发布时间】:2021-08-15 10:01:04
【问题描述】:
我对 API 服务比较陌生,我正在尝试构建一个仪表板,以便从 Alphavantage API 获取数据。 我试图通过创建一个列表并将索引传递给我的 API 调用来同时获取 3 个符号。我为每个符号显示 1 行。一切正常,但是当我尝试获取 MSFT/IBM 之类的符号时,它给了我 undefined。我想在每行的前面附加符号,以便用户了解行中的符号率。 不确定我在这里做错了什么,或者是否有任何解决方法值得赞赏,但任何帮助都会很棒!
完整的工作示例在代码笔中:https://codepen.io/kenny-kk/pen/JjWyrwK
HTML
<button id="get_data" onclick="getData()" class="btn btn-primary" style="margin-left: 5%;">Get Data</button>
Javascript
symbol = ["IBM", "MSFT", "AAPL"];
function getting_data(){
// if(company !== null){
for (i = 0; i < symbol.length; i++) {
$.getJSON("https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol="+symbol[i]+"&outputsize=compact&interval=60min&apikey="+api)
.done(async function(data){
console.log(data)
if (data.Note) {
alert(data.Note);
return
}
const responceData = [];
var date = data["Time Series (60min)"]
console.log(date)
let a = 1;
// let b = 7;
for(var d in date){
// var r = d.split("-");
if(a-- > 0){
var value = date[d];
// dps.unshift({x: new Date(parseInt(r[0]), parseInt(r[1])-1, parseInt(r[2])), y: parseFloat(value["1. open"])});
// if(b-- > 0){
let c = [d, value["1. open"], value["2. high"], value["3. low"], value["4. close"], value["5. volume"]];
responceData.push({
date: d,
open: value["1. open"],
high: value["2. high"],
low: value["3. low"],
close: value["4. close"],
volume: value["5. volume"],
});
// }
}else{
break;
}
}
【问题讨论】:
-
您好,请您详细说明一下
.. get the Symbol like MSFT/IBM it gives me undefined..? -
@Swati 很抱歉造成混淆,我的意思是无论我尝试从 API 获取什么符号,它都会返回未定义的。我试图传递我的符号列表但失败了,并且尝试访问 API 元数据中的符号,它返回未定义。 Idk 我在这里做错了什么
标签: javascript jquery api alpha-vantage