以下代码会将id 0
中的两个元素设置为-
,即使我只希望将其中一个设置为-1
。我只是创建了对labelArray的引用,还是其他的东西?更改数组的值更改原始数组JavaScript
labelArray.sort(compare);
valueArray = labelArray;
valueArray[0] = '-1';
labelArray[0] = '-';
所有帮助表示赞赏。
以下代码会将id 0
中的两个元素设置为-
,即使我只希望将其中一个设置为-1
。我只是创建了对labelArray的引用,还是其他的东西?更改数组的值更改原始数组JavaScript
labelArray.sort(compare);
valueArray = labelArray;
valueArray[0] = '-1';
labelArray[0] = '-';
所有帮助表示赞赏。
我只是创建一个对labelArray […]的引用?
是的,正好。 valueArray
和labelArray
仍然标识尚未被复制的相同对象。
valueArray
只是对labelArray
的引用。
你想要做的就是复制数组。你可以使用jQuery.clone()或类似的克隆函数来做到这一点。
该项目不使用jQuery,因此现在不在表格中。无论如何,我可能最终会转向jQuery。 – OpensaurusRex
+1分片。 – ruakh
那是因为它是一个正确的对象? – OpensaurusRex
@ deth4uall是的,JS所有_reference_值中的变量,对象属性和数组插槽,它们不包含_contain_它们。 – Phrogz