数组中元素的位置

Cjlu_B 2010-01-25 11:02:03

var person = [
{id:0,name:'测试0'},
{id:1,name:'测试1'},
{id:2,name:'测试2'},
{id:3,name:'测试3'},
{id:4,name:'测试4'},
{id:5,name:'测试5'},
{id:6,name:'测试6'},
{id:7,name:'测试7'},
{id:8,name:'测试8'},
{id:9,name:'测试9'}
]

Array.prototype.removeSplice = function(index){
if(isNaN(index)||index>this.length){
return false;
}
this.splice(index,1);
}

person.removeSplice(3)



这样的话就移除了{id:3,name:'测试3'},
原来设想person.removeSplice()的参数是用person的id来获得的
但是移除之后id就对不上该元素在数组中的位置了
有什么办法可以解决这个问题
...全文
74 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
呼吸先生 2010-01-25
  • 打赏
  • 举报
回复
如果不想借助其它的变量,那么我看就需要遍历一下元素真正的位置了,比如3移除了,在移除4的时候看看4到底在哪,然后再移除4.
supNate 2010-01-25
  • 打赏
  • 举报
回复
Array.prototype.removeSplice = function(index){
var i = 0;
for(i=0; i<this.length && this[i].id != index; i++);
if(i > this.length)return false;
this.splice(i,1);
return true;
}

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧