首页 > 解决方案 > 来自变量的 Google JavaScript 电子表格属性 JSON

问题描述

在使用 Coinmarketcap.com API 的谷歌表格中,我正在尝试下载数据。为此,我有一个循环,我想在其中迭代先前创建的表中的后续名称。

  var listaCrypto = "BTC,ETH,ADA";
  var tabCrypto = listaCrypto.split(",");


for (var i = 1; tabCrypto[i]; i++) {

    var url='https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol='+tabCrypto[i];
    var result= UrlFetchApp.fetch(url, requestOptions);

    var txt= result.getContentText();
    var d=JSON.parse(txt); 

    lista1.getRange(start_row + rankBTC, 1).setValue(d.data.tabCrypto[i].name);  //<-- this doesn't
    lista1.getRange(start_row + rankBTC, 2).setValue(d.data.BTC.name);  //<-- this line works
  }

标签: javascriptjsonapivariables

解决方案


您可以使用此语法object["property_name"]property_nameobject

  var listaCrypto = "BTC,ETH,ADA";
  var tabCrypto = listaCrypto.split(",");


for (var i = 0; i<tabCrypto.length; i++) {
    var symbol = tabCrypto[i];
    var url='https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol='+tabCrypto[i];
    var result= UrlFetchApp.fetch(url, requestOptions);

    var txt= result.getContentText();
    var d=JSON.parse(txt); 

    lista1.getRange(start_row + rankBTC, 1).setValue(d.data[symbol].name);  //<-- this doesn't
    lista1.getRange(start_row + rankBTC, 2).setValue(d.data.BTC.name);  //<-- this line works
}

推荐阅读