全局变量的值改变了,javascript
the values of a global variable changed, javascript
我有这个代码片段,我不知道为什么变量的值改变了。
while (increment > 0) {
for (i = increment; i < n; i++) {
var unsorted = list;
console.log(unsorted + " -> unsorted" + i);
var temp = list[i];
var j = i;
while (j >= increment && list[j - increment] > temp) {
list[j] = list[j - increment];
j -= increment;
}
list[j] = temp;
console.log(unsorted + " -> must not change" + i);
console.log(list + "-> must not be the same below");
}
}
当我再次记录变量unsorted
时,值已更改?为什么?
你永远只有一个数组。
相反,你可以调用var unsorted = list
创建了第二个引用,该引用指向同一个数组实例。list.slice()
,它返回数组的(浅)副本。
相关文章:
- JavaScript改变了双方的显示风格
- Javascript改变位置赢得'不适用于Chrome或IE
- Hov 我用 javascript 改变风格,只影响第一个 ul
- Javascript:改变内部HTML与显示
- 你能用Javascript改变一个表的背景属性吗
- 当javascript改变两个标签的宽度时,它们会自动改变位置
- Javascript-改变图像的宽度
- JavaScript改变DIV背景使用ID
- jQuery/Javascript:改变一个锚定标签的onclick
- 用JavaScript改变HTML中的Tex字符串
- 用javascript改变css样式
- 在鼠标悬停时,使用javaScript改变RadRotator的RotatorType属性
- 只有Javascript -改变图像悬停在隐藏的单选按钮
- 正则表达式javascript改变url中的参数值
- 如何通过javascript改变css伪元素
- 如何用javascript改变android webView的字体
- 通过JavaScript改变DevExpress GridView在SetFocusedRowIndex(-1)之后的行
- Javascript改变图像/背景图像不工作
- 使用JavaScript改变整个页面的前景和背景颜色
- 使用JavaScript改变SVG路径的颜色(JS颜色库)