我遇到了谷歌脚本代码的一部分,其中一个数组元素意外更改。对我来说这看起来像个错误,但是我想从这里听到它是否真的是或者只是我忽略了我的编码错误。当然,我也希望在任何情况下都能找到解决方案。
这是代码的一部分。
if (chkIn) {arr[1] = importData[i][1]+'2';
} else {
Logger.log((i)+' '+importData[i][1]);
Logger.log((i+1)+' '+importData[i+1][1]);
Logger.log((i+2)+' '+importData[i+2][1]);
Logger.log(arr[1]);
arr[1] = importData[i][1]+'1';
Logger.log('---------------------------------------------------');
Logger.log((i)+' '+importData[i][1]);
Logger.log((i+1)+' '+importData[i+1][1]);
Logger.log((i+2)+' '+importData[i+2][1]);
Logger.log(arr[1]);
};
(if语句在这里似乎并不重要,但我将其包括在内以防万一。)
这是输出。
2573 2017122103
2574 20171221041
2575 20171221042
20171221042
---------------------------------------------------
2573 2017122103
2574 20171221041
2575 20171221031
20171221031
我真的不知道importData[i+2][1]
如何将其值更改为arr[1]
(2575之后的数字)。
提前谢谢。
答案 0 :(得分:0)
可能这是因为在你的情况下:
arr === importData[i+2]
因此,当您更改arr[1]
时,您也更改了importData[i+2][1]
。