Dan*_*her 4 javascript arrays jquery copy instance
如何从数组副本中删除对象而不将其从原始数据中删除?
我有一个全局变量:
var userTrickList = [];
Run Code Online (Sandbox Code Playgroud)
在函数内部,我复制了该全局数组:
var tempUserTrickList = userTrickList;
Run Code Online (Sandbox Code Playgroud)
然后我使用removeItem我创建的函数来删除某个对象.
removeItem(considerTrick.IDName, tempUserTrickList);
function removeItem(item, list) {
//takes a string as 'item', finds in the array as 'list',
//then removes it from the list.
for(var i = 0; i < list.length; i++)
{
if(item === list[i])
{
list.splice(i,1);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,这个功能也将它从中删除userTrickList了.
有任何想法吗?这绝对是一个问题"removeItem(considerTrick.IDName, tempUserTrickList);",但我想不出解决方案.
Dan*_*iel 13
使用.slice(0)克隆的数组.
var tempUserTrickList = userTrickList.slice(0);
Run Code Online (Sandbox Code Playgroud)
致谢:http: //davidwalsh.name/javascript-clone-array
| 归档时间: |
|
| 查看次数: |
5626 次 |
| 最近记录: |