var list = temp.message.List;
for(var i=0; i<list.length;i++)
{
month=list[i].createDate.split("-");
if(list[i].Isdel == 1)
{
list.splice(i,1);
}
}移除了Isdel为1的元素之后,下面循环展示还是会有Isdel为1的记录,为什么啊!!!!
for(var i=0; i<list.length;i++)
{
month=list[i].createDate.split("-");
if(list[i].Isdel == 1)
{
list.splice(i,1);
}
}移除了Isdel为1的元素之后,下面循环展示还是会有Isdel为1的记录,为什么啊!!!!
解决方案 »
- Iframe自定义滚动条
- web版游戏怎么实现联机对战啊?
- window.showModalDialog打开子窗口,为什么子窗口的iframe变成了只读?
- 关于键盘事件JS代码问题
- 关于弹出(alert)窗口的问题!(在线等!只有最后5分了,都给你了.)
- javascript如何实现不刷新网页每隔10分钟弹出一次广告?
- 在用 showModalDialog 是显示的数据不刷新,怎么办?急!!
- 在一个form里有一个textField,还有一个提交按钮,我想实现在textField里按回车然后form就提交,请问如何实现?
- 请问怎么做下拉菜单
- vue+cordova为什么用router显示空白页
- 关于window.onload的问题
- Ext4 grid中一个问题!再线等....
比如加个alert(list.length),查看list的长度是否减小
for(var i=0; i<list.length;i++)
{
if(parseInt(list[i].Isdel) == 0)
{
list.splice(i,1);alert(list[i].Isdel);
}
}
for(var i=0; i<list.length;i++)
{
alert(list[i].Isdel); }
if(parseInt(list[i].Isdel) == 0)
{
list.splice(i,1);alert(list[i].Isdel);
i--;这个地方加个这。。因为长度减小了,所以list.length这个值在下一个循环的时候,就小了,所以导致后面的半段没有操作完
}
}这个可以明白我的意思吗?这样的删除操作最好是从最高的向最低的删除,
比如for(var i= list.length-1;i>=0;i--)这样就不会有问题了,
应该是这样的,试试!