arrays - 将 JSON 数组输出打印到 Google Sheet

标签 arrays json google-apps-script google-sheets jsonparser

我正在尝试解析 Google 脚本中 JSON 数组的输出并将其打印到工作表中。工作表中的预期输出:

  • 第 1 行:澳元 |新年 |英镑|港元
  • 第 2 行:0.98 | 5.01 | 5.01 0.56 | 0.56 5.60
  • 第 3 行:0.91 | 8.01 | 0.93 | 0.93 2.61

我目前正在使用下面的脚本,它的输出为

  • 第 1 行:{澳元=0.98、港元=5.01、英镑=0.56、人民币=5.60}
  • 第 2 行:{澳元=0.91、港元=8.01、英镑=0.93、人民币=2.61}

任何人都可以帮助我解决这里缺少的问题吗?

    function addObject(){
     var obj = {
        "base": "CAD",
        "date": "2017-05-05",
        "rates": [{
            "AUD": "0.98",
            "CNY": "5.01",
            "GBP": "0.56",
            "HKD": "5.60"
        },
                 {
            "AUD": "0.91",
            "CNY": "8.01",
            "GBP": "0.93",
            "HKD": "2.61"
        }]
    }
    var inputArray = []
    var rates = obj.rates
    for (var j in rates){
      inputArray.push([rates[j]])
    }
    Logger.log(inputArray)
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sheet = ss.getSheetByName('Sheet1');
    sheet.getRange(sheet.getLastRow()+1, 1,inputArray.length,inputArray[0].length).setValues(inputArray)

    }

最佳答案

您需要将数组转换为二维数组:

let obj = {
    "base": "CAD",
    "date": "2017-05-05",
    "rates": [{
        "AUD": "0.98",
        "CNY": "5.01",
        "GBP": "0.56",
        "HKD": "5.60"
    },
             {
        "AUD": "0.91",
        "CNY": "8.01",
        "GBP": "0.93",
        "HKD": "2.61"
    }]
}

let headers = Object.keys(obj.rates[0]);
let out = obj.rates.map(({AUD,CNY,GBP,HKD})=> [AUD,CNY,GBP,HKD]);
out.unshift(headers);
console.log(out);//setvalues this array: out

关于arrays - 将 JSON 数组输出打印到 Google Sheet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60128157/

相关文章:

javascript - 在 if 语句中访问数组

arrays - 如何在 Ruby 中将数组转换为另一个数组

php - 未以正确的格式从 python 脚本返回代码

google-apps-script - 在 Google 表格中将不相邻的列转换为正确的/标题大小写

python - 最小化循环迭代的多变量函数

javascript - 为什么javascript程序不运行

json - fromJSON 错误(粘贴(原始数据,崩溃 = "")): unclosed string

javascript - Nodejs 返回 Blockchain Rates API 的完整 JSON,但我无法访问其中的特定对象。为什么?

javascript - 从 Google 脚本检索数据

google-apps-script - 用于在从表单插入的行上插入时间戳的 Google 表格脚本?如何使用 onChange 检测插入的行?