浅谈使用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 相关文章推荐
jquery Tab效果和动态加载的简单实例
Dec 11 Javascript
css与javascript跨浏览器兼容性总结
Sep 15 Javascript
node.js集成百度UE编辑器
Feb 05 Javascript
Javascript 事件冒泡机制详细介绍
Oct 10 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
Nov 18 Javascript
ReactNative 之FlatList使用及踩坑封装总结
Nov 29 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
Jul 07 Javascript
vue-content-loader内容加载器的使用方法
Aug 05 Javascript
JavaScript实现星级评价效果
May 17 Javascript
关于vue里页面的缓存详解
Nov 04 Javascript
javascript实现弹幕墙效果
Nov 28 Javascript
jQuery treeview树形结构应用
Mar 24 jQuery
浅谈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
set_include_path在win和linux下的区别
2008/01/10 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
浅谈php优化需要注意的地方
2014/11/27 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
php 在字符串指定位置插入新字符的简单实现
2016/06/28 PHP
JS模块与命名空间的介绍
2013/03/22 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
jquery validate.js表单验证入门实例(附源码)
2015/11/10 Javascript
Javascript页面跳转常见实现方式汇总
2015/11/28 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
深入探究node之Transform
2017/07/20 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
vue项目打包部署_nginx代理访问方法详解
2018/09/20 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
微信小程序登录态和检验注册过没的app.js写法
2019/05/22 Javascript
JS实现查找数组中对象的属性值是否存在示例
2019/05/24 Javascript
了解重排与重绘
2019/05/29 Javascript
Webpack中loader打包各种文件的方法实例
2019/09/03 Javascript
js 实现watch监听数据变化的代码
2019/10/13 Javascript
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
2018/04/05 Python
Python简单计算文件MD5值的方法示例
2018/04/11 Python
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
python3.5基于TCP实现文件传输
2020/03/20 Python
Apache,wsgi,django 程序部署配置方法详解
2019/07/01 Python
python格式化输出保留2位小数的实现方法
2019/07/02 Python
python学生信息管理系统实现代码
2019/12/17 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
Python字典实现伪切片功能
2020/10/28 Python
美国当红的名品折扣网:Gilt Groupe
2016/08/15 全球购物
关于车尾的标语大全
2015/08/11 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
坚持不是死撑,更重要的是心态
2019/08/19 职场文书
MySQL系列之八 MySQL服务器变量
2021/07/02 MySQL
python内置模块之上下文管理contextlib
2022/06/14 Python