是什么导致我的 Google Apps 脚本中出现此 TypeError?

What is causing this TypeError in my Google Apps Script?

我正在尝试通过 Apps 脚本将数据从 Coin Market Cap 调用到 Google sheet。我不明白我在这里做的 TypeError。

代码如下:

function getCryptoPrice() {
  var sh1=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("EPS data CMC");
  
  var url="https://pro-api.coinmarketcap.com/v2/cryptocurrency/quotes/latest?symbol=BTC"
  var requestOptions = {
  method: 'GET',
  uri: 'https://pro-api.coinmarketcap.com/v2/cryptocurrency/quotes/latest',
  qs: {
    start: 1,
    limit: 5000,
    convert: 'USD'
  },
  headers: {
    'X-CMC_PRO_API_KEY': '***********hidden*************'
  },
  json: true,
  gzip: true
};
  
  var httpRequest= UrlFetchApp.fetch(url, requestOptions);
  var getContext= httpRequest.getContentText();
  
  var parseData=JSON.parse(getContext);
  sh1.getRange(1, 2).setValue(parseData.data.BTC.quote.USD.price)
}

错误:

TypeError: Cannot read property 'USD' of undefined
getCryptoPrice  @ Code.gs:24

关键词 : google sheet, apps script, coin market cap, quote, latest, V2, api,

您收到该错误是因为 parseData.data.BTC 正在返回 array

尝试将其更改为:-

sh1.getRange(1, 2).setValue(parseData.data.BTC.quote.USD.price)

这个

sh1.getRange(1, 2).setValue(parseData.data.BTC[0].quote.USD.price)