You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

XMLHttpRequest调用stockdata.org API:如何访问数字键名的BTCUSD数据?

如何正确获取stockdata.org API返回的特殊属性名数据?

我尝试通过XMLHttpRequest从stockdata.org请求数据,使用的代码如下:

var requestURL = 'https://api.stockdata.org/v1/data/currency/latest?symbols=BTCUSD&api_token=[API_KEY]';
var request = new XMLHttpRequest();
request.open('GET', requestURL);
request.responseType = 'json';
request.send();

request.onload = function() {
  console.log(request.response.data[0]);
}

遇到的问题是:response.data[0]下存在名称为0的属性,使用代码console.log(request.response.data[0].0);会触发语法错误。同时,尝试console.log(request.response.data[0].symbol);也无法获取值为“BTCUSD”的symbol字段。请问该如何正确获取目标数据?


解决方法

  • 访问数字命名的属性:JavaScript里点语法不能用于访问纯数字或数字开头的属性,必须改用方括号语法。要访问response.data[0]下的0属性,写法如下:

    console.log(request.response.data[0]['0']);
    
  • 获取symbol字段:你拿不到symbol值,大概率是因为这个字段嵌套在0属性内部,而非直接在response.data[0]层级。先打印request.response.data[0]['0']确认完整结构,再按实际路径访问:

    // 先打印确认结构
    console.log(request.response.data[0]['0']);
    // 若symbol在该层级下,直接访问
    console.log(request.response.data[0]['0'].symbol);
    

如果还是无法获取,建议先打印整个request.response,核对API返回的JSON完整结构,避免路径层级判断错误。


内容的提问来源于stack exchange,提问作者Niels Nouwens

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 23:33:14