Я хочу обновить раскрывающийся список формы Google, используя конкатенацию 3 столбцов (массивы со ссылкой на код). Вывод выглядит правильным, но выравнивание по-прежнему не правильное даже после заполнения отдельных строк. Вот мой пример кода:
function updateForm1(){
var items = [ ["apple", "organic", "101"], ['banana', 'small', '102'], ['pomegranate', 'medium', '1']];
var itemnames = ['apple' , 'banana', 'pomegranate'];
var description = ['organic' , 'small', 'medium'];
var ordercode = ['101', '102', '1'];
var l1 = itemnames.reduce(function (a, b) { return a.length > b.length ? a : b; }).length;
var l2 = description.reduce(function (a, b) { return a.length > b.length ? a : b; }).length;
var l3 = ordercode.reduce(function (a, b) { return a.length > b.length ? a : b; }).length;
var dropdownlist = [];
for (var i =0 ; i < items.length; i++)
{
if(items[i][0].length > 0) {
items[i][0] = items[i][0].padEnd(l1,"*");
}
else
items[i][0] = "".padEnd(l1,"*");
if(items[i][1].length > 0) {
items[i][1] = items[i][1].padEnd(l2,"*");
}
else
items[i][1] = "".padEnd(l2,"*");
if(items[i][2].length > 0) {
items[i][2] = items[i][2].padEnd(l3,"*");
}
else
items[i][2] = "".padEnd(l3,"*");
dropdownlist[i] = items[i][0] + " | " + items[i][1] + " | " + items[i][2];
Logger.log(dropdownlist[i]);
}
}
Журнал:
[20-06-19 12:12:47:845 IST] apple****** | organic | 101
[20-06-19 12:12:47:848 IST] banana***** | small** | 102
[20-06-19 12:12:47:849 IST] pomegranate | medium* | 1**
Но когда я обновляю форму или просматриваю журнал, значения кажутся не выровненными. См. Pi c ниже. Как сделать так, чтобы значения раскрывающегося списка были выровнены по столбцам?