【发布时间】:2017-12-26 03:04:54
【问题描述】:
这是一个处理我遇到问题的数组的函数:
function playWithArrays2()
{
var OneDimArray = [];
var TwoDimArray = [];
OneDimArray.push('Row 0,Value 0');
OneDimArray.push('Row 0,Value 1');
OneDimArray.push('Row 0,Value 2');
TwoDimArray.push(OneDimArray);
OneDimArray = [];
OneDimArray.push('Row 1,Value 0');
OneDimArray.push('Row 1,Value 1');
OneDimArray.push('Row 1,Value 2');
TwoDimArray.push(OneDimArray);
var HoldArray = TwoDimArray[0];
HoldArray[0] = "New Value";
TwoDimArray.push(HoldArray);
Logger.log(TwoDimArray);
}
我正在尝试将二维数组中的一行复制到单行数组中,修改单行数组中的一列,然后将其推送到二维数组中。这是日志的输出:
[17-12-25 21:55:16:660 EST] [[新值,第 0 行,第 1 行,第 0 行,第 2 行],[第 1 行,第 0 行,第 1 行,第 1 行,第 1 行1,值 2],[新值,第 0 行,第 1 行,第 0 行,第 2 行]]
如您所见,推送工作正常:创建了第三个更改的行。问题是第一行也被改变了。那是分配给一维数组的行。
我不想更改第一行。这就是问题所在。
【问题讨论】:
标签: javascript multidimensional-array google-apps-script