浅谈使用splice函数对数组中的元素进行删除时的注意事项


Posted in Javascript onDecember 04, 2016

使用splice函数对数组中的元素进行删除时的注意事项

删除值为c的元素:

<script>
var arr = new Array();
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
arr[3] = 'c';
arr[4] = 'e';

for(var i=0; i<arr.length; i++){
  if(arr[i] == 'c'){
    arr.splice(i,1);
    i=i-1;  // 必须对i减去1,否则后面的一个元素会被跳过去
  }

}
</script>

注意:如果用for(i in arr)的话,后面的一个元素始终会跳过去

<script>

var arr = new Array();
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
arr[3] = 'c';
arr[4] = 'e';

for(i in arr){

  if(arr[i] == 'c'){
    arr.splice(i,1);
    i=i-1;  // 这行代码无效,i 的值并不会改变

  }
  alert(arr.length);
}
</script>

以上这篇浅谈使用splice函数对数组中的元素进行删除时的注意事项就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript valueOf 使用方法
Dec 28 Javascript
jqPlot Option配置对象详解
Jul 25 Javascript
Javascript 去除数组的重复元素
May 04 Javascript
multiSteps 基于Jquery的多步骤滑动切换插件
Jul 22 Javascript
jquery选择器-根据多个属性选择示例代码
Oct 21 Javascript
使用Bootstrap + Vue.js实现表格的动态展示、新增和删除功能
Nov 27 Javascript
微信小程序使用checkbox显示多项选择框功能【附源码下载】
Dec 11 Javascript
详解vue组件中使用路由方法
Feb 12 Javascript
vscode vue 文件模板的配置方法
Jul 23 Javascript
vue遍历生成的输入框 绑定及修改值示例
Oct 30 Javascript
小程序自定义导航栏兼容适配所有机型(附完整案例)
Apr 26 Javascript
vue路由实现登录拦截
Mar 24 Vue.js
浅谈js数组和splice的用法
Dec 04 #Javascript
JavaScript注入漏洞的原理及防范(详解)
Dec 04 #Javascript
浅谈html转义及防止javascript注入攻击的方法
Dec 04 #Javascript
jquery select2的使用心得(推荐)
Dec 04 #Javascript
Jquery删除css属性的简单方法
Dec 04 #Javascript
浅谈jQuery before和insertBefore的区别
Dec 04 #Javascript
jQuery根据ID、CLASS、等获取对象的实例
Dec 04 #Javascript
You might like
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
2019/08/13 PHP
javascript判断是否按回车键并解决浏览器之间的差异
2014/05/13 Javascript
jQuery插件slides实现无缝轮播图特效
2015/04/17 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
JavaScript实现广告的关闭与显示效果实例
2015/07/02 Javascript
JS函数arguments数组获得实际传参数个数的实现方法
2016/05/28 Javascript
谈谈JavaScript中浏览器兼容问题的写法小议
2016/12/17 Javascript
jQuery插件FusionCharts实现的2D柱状图效果示例【附demo源码下载】
2017/03/06 Javascript
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
2017/08/31 Javascript
vue自定义过滤器创建和使用方法详解
2017/11/06 Javascript
three.js加载obj模型的实例代码
2017/11/10 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
JS删除String里某个字符的方法
2021/01/06 Javascript
layui+jquery支持IE8的表格分页方法
2019/09/28 jQuery
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
python冒泡排序简单实现方法
2015/07/09 Python
Python线程之定位与销毁的实现
2019/02/17 Python
对numpy下的轴交换transpose和swapaxes的示例解读
2019/06/26 Python
深入了解python中元类的相关知识
2019/08/29 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
Python列表list常用内建函数实例小结
2019/10/22 Python
如何在python中实现随机选择
2019/11/02 Python
Pytorch中的自动求梯度机制和Variable类实例
2020/02/29 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
2020/06/01 Python
css3背景图片透明叠加属性cross-fade简介及用法实例
2013/01/08 HTML / CSS
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
中医药大学毕业生自荐信
2013/11/08 职场文书
管理科学大学生求职信
2013/11/13 职场文书
金融管理应届生求职信
2014/02/20 职场文书
远程培训的心得体会
2014/09/01 职场文书
2014年审计工作总结
2014/11/17 职场文书
互联网的下一个风口:新的独角兽将诞生
2019/08/02 职场文书
MySQL连表查询分组去重的实现示例
2021/07/01 MySQL
python常见的占位符总结及用法
2021/07/02 Python