删除数组某项并重新排列数组
后端开发和前端开发中,经常会有针对某个数组进行删除的业务操作。
例如删除图片组的某个图片,后对图片进行组进行重新排序,删除列表中某一项,
对列表下标进行重新排序。
实现思路:
1、删除数组中某个元素时,获取该元素的数组序号
2、遍历数组中所有元素,跟删除元素的数组序号做比对,如果被遍历的元素的
序号大于删除元素的数组序号,这设置被遍历的元素序号减一,遍历完成后,
则得到新的数组。
实现代码:
$(".channeVoice").unbind();
$(".channeVoice").on("click", function(event) {
event.stopPropagation();
// alert($(this).attr("data-voiceIndex"));
var indexstr=$(this).attr("data-voiceIndex");
$(this).parent('.ditem').remove();
voiceData.splice($(this).attr("data-voiceIndex"), 1);
//重置图片下标
$(".channeVoice").each(function(index, item) {
// alert(index);
// $(this).attr("data-voiceIndex", index);s
if($(this).attr("data-voiceIndex")>indexstr){
// alert($(this).attr("data-voiceIndex"));
$(this).attr("data-voiceIndex", $(this).attr("data-voiceIndex")-1);
}
});
});