【发布时间】:2021-06-08 23:58:39
【问题描述】:
下午好,
我正在尝试将“行”数组(或 1D 数组)转置为“列”数组(或其中包含单个数组的数组),以允许我将值设置为单个列(向下多行) 如果它是跨多列的一行
我尝试使用推送循环和地图功能,但均未成功:
function myFunction2() {
var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Source1");
var lastColumn = ss.getLastColumn()
var endRange = lastColumn-3
//Retrieve values into array named "items"
var items = ss.getRange(16,4,1,endRange).getValues()
转置尝试#1:
var colArray = [];
for (var i=0; i<items.length; i++)
{
colArray.push([items[i]]);
}
}
尝试 #1 的输出:
[[[item1, item2, item3, item4, item5]]]
转置尝试 #2:
var colArray = items.map(function (el){
return [el];
});
第 2 次尝试的输出:
[[[item1, item2, item3, item4, item5]]]
我想要的预期输出是:
[[item1], [item2], [item3], [item4], [item5]]
有没有办法实现预期的输出?
【问题讨论】:
-
转置尝试 #2 工作并输出为您的预期输出:jsfiddle.net/z5kj17wa
标签: javascript arrays google-apps-script transpose