jquery如何删除数组中的一个元素?

例如要在一个名为array的数组中删除“内容”为‘3’的元素,但不知道‘3’的下标。该如何删除?

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() 返回数组对象的原始值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-09-25
构建一个新的数组, 然后循环老的, 排除内容为3那个 不追加 就可以了本回答被网友采纳
第2个回答  推荐于2018-02-20
for(var i=0;i<array.length;i++){
    if(array[i]==='3'){
        arr.splice(i,1);//从下标为i的元素开始,连续删除1个元素
        i--;//因为删除下标为i的元素后,该位置又被新的元素所占据,所以要重新检测该位置
    }
}

你试试这段代码吧

本回答被提问者和网友采纳
第3个回答  2016-06-12

<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被删除!

第4个回答  2015-06-10
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)
相似回答