任务:
充满数据(未知长度)的一列。
|data1 |
|data2 |
|data3 |我需要把它转换成JSON (然后做其他的事情,但我知道怎么做)
{
"adminSettings":
{ "Value":
{"whitelist":
[
"data1",
"data2",
"data3"
],
"netWhitelist":"data1\ndata2\ndata3"
}
}
}预期方式:
如果我正确理解,我应该能够在代码中指定大部分JSON,然后将列加载到脚本中,然后
whitelist值作为键。netWhitelist中我已经组装了这个,但是它还远远没有完成,大多数手册都是关于如何从JSON中获取数据并放入一个表中,而不是反过来。
function make_JSON() {
// Read data in column
var AUTO_data = activeSpreadsheet.getSheetByName("AUTO_data");
var values = AUTO_data.getRange("A2:A").getValues();
var JSON = {"adminSettings":
{"Value":
{"whitelist":
[
],
"netWhitelist": netWhitelist_string
}
}
}
}任何技巧和例子都会有帮助,我更愿意自己去理解和解决它。
发布于 2020-04-21 18:06:35
getValues()返回一个2D数组。将其展平到1D数组并将其添加到json(Array.join用于创建字符串):
function make_JSON() {
// Read data in column
var AUTO_data = activeSpreadsheet.getSheetByName("AUTO_data");
var values = AUTO_data.getRange("A2:A"+AUTO_data.getLastRow()).getValues().flat();
var JSON = {"adminSettings":
{"Value":
{"whitelist":values,
"netWhitelist": values.join('\n')
}
}
}
}https://stackoverflow.com/questions/61350002
复制相似问题