我需要计算一些加密货币金额为USD。我使用CryptoCompare API准备了一个脚本,但是在Google表格中运行时它非常不一致,某些单元格会计算de值,其他单元格会给出此错误
TypeError:无法从未定义中读取属性“ USD”。 (第12行)。
该代码在我在Apps脚本中运行时有效,有时在Sheets中运行时会出错。这是代码:
function cryptoToUSD(coin, time, amount) {
var amountInUSD;
time = time.toFixed(0);
var url = "https://min-api.cryptocompare.com/data/pricehistorical?fsym="+coin+"&tsyms=USD&ts="+time;
var response = UrlFetchApp.fetch(url);
response = JSON.parse(response.getContentText());
Logger.log(url);
Logger.log(response);
Logger.log(response[coin]["USD"]);
amountInUSD = amount * response[coin]["USD"];
return amountInUSD;
}
这是一个测试api调用:
https://min-api.cryptocompare.com/data/pricehistorical?fsym=BTG&tsyms=USD&ts=1536134825
它返回:
{“ BTG”:{“ USD”:19.14}}