js数组删除问题(splice和delete的用法)

 更新时间:2023年02月10日 10:28:13   作者:QQ向天歌  
这篇文章主要介绍了js数组删除问题(splice和delete的用法),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

js数组删除问题

用到了数组的删除,分别使用了splice和delete方法,记录一下,方便下次查找。

原数组是一个关联数组,如

var test=[];
test[1]={name:'1',age:1};
test[2]={name:'2',age:2};
test[4]={name:'3',age:3};

console.log(test)

长度为5的关联数组,现在开始删除。

1.splice方法

test.splice(2,1);
console.log(test)// 打印结果如下

ps:数组长度相应改变,但是原来的数组索引也相应改变,splice参数中第一个2,是删除的起始索引(从0算起),在此是数组第二个元素。第二个1,是删除元素的个数,在此只删除一个元素,即test[2];

此时遍历数组元素可以用普通遍历数组的方式,比如for,因为删除的元素在数组中并不保留。

2.delete方法

delete test[2];
console.log(test);// 打印结果如下

ps:这种方式数组长度不变,此时test[2]变为undefined了,好处是原来数组的索引也保持不变,此时要遍历数组元素可以才用。这种遍历方式跳过其中undefined的元素,所以非常实用。

for(i in test)
{
 console.log(test[i])
}
//打印结果如下:

js数组删除方式 delete 与 splice区别

js的数组删除方式有两种:

1.delete (删除之后,数组的长度不发生变化。如图所示:删除一条数据后长度还是2)

var array = ["/profile/upload/2022/07/25/OIP-C_20220725151518A011.jpg"  ,   "/profile/upload/2022/07/25/OIP-C_20220725151518A003.jpg"]
delete array[0]

 2.splice (删除之后,数组的长度也发生变化。如图所示:删除一条数据后长度变为1)

var array = ["/profile/upload/2022/07/25/OIP-C_20220725151518A011.jpg"  ,  "/profile/upload/2022/07/25/OIP-C_20220725151518A003.jpg"]

splice(0,1);括号中的第一个'0'数字是起始位置,后一个数字'1'是需要删除的长度

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • ECMAScript 创建自己的js类库

    ECMAScript 创建自己的js类库

    ECMAScript中最有意思,最强大的地方在于函数。最进在完善自己的js类库的时候发现我们经常在用函数,但真的很少有人懂得ECMAScript函数功能
    2012-11-11
  • iscroll-probe实现下拉刷新和下拉加载效果

    iscroll-probe实现下拉刷新和下拉加载效果

    这篇文章主要为大家详细介绍了iscroll-probe下拉刷新和下拉加载,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Javascript实现鼠标点击冒泡特效

    Javascript实现鼠标点击冒泡特效

    这篇文章主要为大家详细介绍了Javascript实现鼠标点击冒泡特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • JavaScript数组的定义及数字操作技巧

    JavaScript数组的定义及数字操作技巧

    这篇文章主要介绍了JavaScript数组的定义及数字操作技巧的相关资料,需要的朋友可以参考下
    2016-06-06
  • 基于javascript实现单选及多选的向右和向左移动实例

    基于javascript实现单选及多选的向右和向左移动实例

    这篇文章主要介绍了基于javascript实现单选及多选的向右和向左移动,涉及javascript针对页面元素的动态操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 原生js实现autocomplete插件

    原生js实现autocomplete插件

    这篇文章主要介绍了原生js实现autocomplete插件的相关资料,需要的朋友可以参考下
    2016-04-04
  • JS实现队列与堆栈的方法

    JS实现队列与堆栈的方法

    这篇文章主要介绍了JS实现队列与堆栈的方法,结合实例形式分析了JavaScript实现队列与堆栈的原理与相关实现技巧,需要的朋友可以参考下
    2016-04-04
  • 基于bootstrap的选择框插件icheck

    基于bootstrap的选择框插件icheck

    这篇文章主要为大家详细介绍了基于bootstrap的选择框插件icheck,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 微信小程序网络封装(简单高效)

    微信小程序网络封装(简单高效)

    这篇文章主要介绍了微信小程序网络封装(简单高效),微信小程序的网络请求很便捷,直接调用就可以了。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Bootstrap源码解读导航条(7)

    Bootstrap源码解读导航条(7)

    这篇文章主要源码解读了Bootstrap导航条,介绍了Bootstrap各式各样的导航条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12

最新评论