我在为变量设置新值时注意到了奇怪的错误。不幸的是,Value也被复制到了另一个变量中。你知道这里发生了什么吗? 以下是调试时的一些屏幕截图。一个在设置新值之前,一个在之后。您可以看到该值如何自动复制到2个不同的变量。
如果你想自己检查一下,这是文件:
docs.google.com/spreadsheets/d/17L7KDVteaYUuBE8v5jRRUGBBHa5_Dg6dH0eQ8oDTde4/edit?usp=sharing
先谢谢你们
答案 0 :(得分:1)
这不是一个错误 将数组分配给变量是通过JavaScript和大多数其他编程语言的引用(到内存位置)来实现的 考虑这个简化的例子
a=[1];
b=a;
b[0]=2;
a
现在是[2]
要分配副本,您需要创建副本,例如使用切片
c=a.slice();
c[0]=3;
a
现在仍为[2]
,c
为[3]
。
所以试试
red = temp[i].slice();