我正在检查一个包含"editor "以及各种"市场"。附加到它,并获得一个唯一的编辑列表,其中包含每个市场的条目数。
使用这个脚本,我设法得到两个列表:"editor"one_answers"market"
function JonSnow() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange("XX!J1:J114");
var data = range.getDisplayValues();
Logger.log(JSON.stringify(data));
const editor = [];
const market = [];
data.forEach( (val, index) =>{
if(val !="None - regular editor" && val !="N/A" && val !="Cov?" && val !="" && val !="None - no cross-market coverage for this task"){
if(index >= 2 && index <= 12){
markett = "Dach";
}else if (index >= 15 && index <= 30) {
markett = "Dutch";
}else if (index >= 32 && index <= 48) {
markett = "French";
}else if (index >= 52 && index <= 64) {
markett = "Italian";
}else if (index >= 67 && index <= 74) {
markett = "Nordics";
}else if (index >= 77 && index <= 92) {
markett = "polish";
}else if (index >= 95 && index <= 114) {
markett = "Uk";
};
editor.push(val)
market.push(markett)
} else {
return
};
});
Logger.log(editor);
Logger.log(market);
const edunique = [...new Set(editor)];
我接下来的步骤应该是获得一个唯一编辑器和循环的列表,计算市场进入的数量。问题是,[...new Set(editor)]
不起作用,我相信这是因为我的"编辑"。list返回[[Name1],[Name2],[Name1]]
,应该返回["Name1","Name2","Name1"]
工作
以下是我的问题:
- 如何调用这样的格式?
[[],[],[]]
- 我哪里出错了,得到了这个? 如何解决这个问题,或者防止它?
谢谢!!(对不起,如果我的标题没有帮助,因为我不知道该怎么称呼我的问题)
Range..getDisplayValues()
函数得到一个2D数组。要获得1D数组,使用Array.flat()
,如下所示:
const data = range.getDisplayValues().flat();