jquery如何删除数组中的一个元素?
发布网友
发布时间:2022-04-26 22:10
我来回答
共6个回答
热心网友
时间:2022-04-22 15:01
jquery删除数组中的一个元素的方法是用splice实现的。
举例说明:
var arrList = ['a','b','c','d'];
arrList.splice(jQuery.inArray('b',arrList),1);
alert(arrList);
其中jQuery.inArray('b',arrList)是b这个元素在数组arrList 中的位置
splice(index,1)函数中第一个参数index是要删除元素在数组中的位置,第二个参数是要删除的数量。
Array对象的方法有:
concat()连接两个或更多的数组,并返回结果。
join()把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop()删除并返回数组的最后一个元素。
push()向数组的末尾添加一个或更多元素,并返回新的长度。
reverse()颠倒数组中元素的顺序。
shift()删除并返回数组的第一个元素
slice()从某个已有的数组返回选定的元素
sort()对数组的元素进行排序
splice()删除元素,并向数组添加新元素。
toSource()返回该对象的源代码。
toString()把数组转换为字符串,并返回结果。
toLocaleString()把数组转换为本地数组,并返回结果。
unshift()向数组的开头添加一个或更多元素,并返回新的长度。
valueOf()返回数组对象的原始值。
热心网友
时间:2022-04-22 16:19
构建一个新的数组, 然后循环老的, 排除内容为3那个 不追加 就可以了
热心网友
时间:2022-04-22 17:54
for(var i=0;i<array.length;i++){
if(array[i]==='3'){
arr.splice(i,1);//从下标为i的元素开始,连续删除1个元素
i--;//因为删除下标为i的元素后,该位置又被新的元素所占据,所以要重新检测该位置
}
}
你试试这段代码吧
热心网友
时间:2022-04-22 19:45
<script>
var a = [3,4,5,6,7,8,9];
$.each(a,function(index,item){
// index是索引值(即下标) item是每次遍历得到的值;
if(item==7){
a.splice(index,1);
}
});
</script>
下面是运行结果,7被删除!
热心网友
时间:2022-04-22 21:53
Array.prototype.deleteByContent = function(content) {
for(var i=0; i<this.length; i++) {
if (this[i] == content) {
this.splice(i, 1);
return;//如果要删除内容全部为content的数据,就删除return
}
}
}
调用方法:
[1,2,3,666,333,666].deleteByContent(333)
热心网友
时间:2022-04-23 00:18
数组的话$.each()遍历下,判断下arr中遍历出的字符串str.indexOf("3")是否>=0,是的话就把这个赋个空字符串或者用arr.splice()。