Javascript 在Google应用程序脚本中使用.splice()时出现问题
我正在尝试使用Google应用程序脚本中的splice提取2D数组的子集。A是输入数组,从中创建两个数组info[]和ttdata[]。代码如下:Javascript 在Google应用程序脚本中使用.splice()时出现问题,javascript,arrays,google-apps-script,Javascript,Arrays,Google Apps Script,我正在尝试使用Google应用程序脚本中的splice提取2D数组的子集。A是输入数组,从中创建两个数组info[]和ttdata[]。代码如下: function SpliceTest() { var A = [[1,2,3,4,5,6],[1,2,3,4,5,6],[1,2,3,4,5,6], ["","","","1","",""],["","","","","2",""]] Logger.log(A) var spliced = SpliceData(A)
function SpliceTest()
{
var A = [[1,2,3,4,5,6],[1,2,3,4,5,6],[1,2,3,4,5,6],
["","","","1","",""],["","","","","2",""]]
Logger.log(A)
var spliced = SpliceData(A)
Logger.log(A)
}
function SpliceData(data)
{
var info = []
var ttdata = []
for(var j = 0; j < 2; j++)
{
info[j] = data[j].splice(4, 2)
}
for(var j = 2; j < data.length; j++)
{
ttdata[j-2] = data[j].splice(0, 4)
}
return [info, ttdata]
}
就像Tehhowch在评论中提到的那样,你需要的不是 此外,如果仔细阅读文档,您会注意到splice修改了原始阵列,slice生成了它的浅拷贝。 功能拼接测试 { var记录器=控制台 变量A=[[1,2,3,4,5,6],[1,2,3,4,5,6],[1,2,3,4,5,6], [,,,1,,],[,,,,2,]] 变量拼接=拼接数据A Logger.log拼接阵列: 对数拼接 Logger.logOriginal数组A: logA.logA } 函数数据 { var info=[] 变量ttdata=[] forvar j=0;j<2;j++ { 信息[j]=数据[j].4 } forvar j=2;j
[19-01-25 11:28:05:493 CET] [[1.0, 2.0, 3.0, 4.0, 5.0, 6.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0], [, , , 1, , ], [, , , , 2, ]]
[19-01-25 11:28:05:494 CET] [[1.0, 2.0, 3.0, 4.0], [1.0, 2.0, 3.0, 4.0], [5.0, 6.0], [, ], [2, ]]