连接一个变量与谷歌表一个JSON调用

问题描述 投票:0回答:1

我在做一个API调用通过一系列以coinmarket帽和循环,在加密行情的谷歌电子表格。

代码如下:

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("test");
var r = sheet.getRange('B2:B17').getValues();
for (var i = 0; i < r.length; i++) {
    symbol = r[i][0];
    url = 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol=' + symbol + '&convert=USD&CMC_PRO_API_KEY=8192e0b9-fda4-4668-9251-3dfded3bdc2f';
    //url = 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol=BTC&convert=USD&CMC_PRO_API_KEY=abcdetc'
    var resp = UrlFetchApp.fetch(url);
    var result = JSON.parse(resp.getContentText());
    var price = result.data.BTC.quote.USD.price;
    sheet.getRange(2 + i, 3).setValue(price);

这工作,但它提供了,很明显,只有价格的比特币,因为BTC是在var价格线。

相反,BTC的我想有+符号+,这样的代码可以遍历所有的不同的符号。我曾经尝试这样做:

var price = result + "." + data + "." + symbol + "." + quote + "." + USD + "." price

这是行不通的。我已经试过这也是不成功的“”其他各种用途,并且还试图单独串联字符串。

怎么可以这样做正确?

先感谢您!

javascript google-sheets google-sheets-api
1个回答
0
投票

您可以尝试这样的事:

string.concat(string1, string2, ..., stringX)

要么

var arr = ['a1', 'b1', 'c1']; console.log(arr.join(',')); // 'a1,b1,c1'.

显式类型转换是可以做到,

var price = ([String(result), String(data), String(symbol), String(quote), String(USD), String(price)]).join(".")

© www.soinside.com 2019 - 2024. All rights reserved.