array.prush添加到错误的数组
array.push adding to wrong array
我创建了两个数组,answeredArr
和correctArr
;保存游戏信息。第一次游戏完成时,我将正确答案数组复制到答案数组:
answeredArr = correctArr;
在这一点之后,每次I answeredArr.push(variable);
、correctArr
也被更新。
这里有很多代码,所以我不愿意全部发布。
数组是对象。当你做objB = objA
时,objA
和objB
指向内存中的同一个位置,换句话说,它们是不同名称下的同一事物。
幸运的是,Array有一个内置的方法Array.prototype.slice
,这使得克隆变得很容易。
var a1 = [], a2;
a2 = a1; // a1 === a2
a2 = a1.slice(); // a1 !== a2, but identical.
Javascript中的数组是通过引用而不是值来处理的,所以当您这样做时:
answeredArr = correctArr;
您将引用设置为answeredArr,使其与引用设置为correctArr相同。此后,对其中一个的任何操作都会影响另一个,因为它们指向同一个数组。
您需要克隆阵列,而不是复制引用。一个简单的方法是:
var answeredArr = correctArr.slice(0);
相关文章:
- JavaScript数组值设置错误
- jQuery Ajax数组序列化错误
- 嵌套的 Jquery 每个 2D 数组错误地重复表单元格
- Angular JS ng重复/添加到数组错误
- HTML5 打印矩形数组错误
- Javascript多维数组错误
- 数组错误如何使其工作
- 更改Img属性时出现填充数组错误
- 试图使用javascript将文本区域中的链接替换为超链接会导致数组错误
- javascript数组错误
- 简单的Javascript游戏:可能的对象数组错误
- Js:多维数组错误嵌套,而这仍然工作的一半
- Javascript数组中出现数组错误
- js空数据数组错误处理
- JS/JQuery在某些函数中出现全局数组错误
- Json数组错误无法设置属性'model'的定义
- 排序日期对象数组错误javascript
- 推送关联数组错误
- 未定义的数组错误(javascript)使用php/ajax/json等
- JSON数组错误