浅谈使用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升级新版本后选择器的语法问题
Jun 02 Javascript
JQuery筛选器全系列介绍
Aug 27 Javascript
jquery提交form表单简单示例分享
Mar 03 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
Oct 16 Javascript
JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)
Sep 24 Javascript
javascript中获取class的简单实现
Jul 12 Javascript
Bootstrap CSS布局之代码
Dec 17 Javascript
js实现适合新闻类图片的轮播效果
Feb 05 Javascript
浅谈vue2 单页面如何设置网页title
Nov 08 Javascript
用node开发并发布一个cli工具的方法步骤
Jan 03 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
Aug 06 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
Aug 28 Javascript
浅谈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
根据ip调用新浪api获取城市名并转成拼音
2014/03/07 PHP
laravel安装zend opcache加速器教程
2015/03/02 PHP
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
深入理解PHP内核(一)
2015/11/10 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
php+jQuery+Ajax简单实现页面异步刷新
2016/08/08 PHP
js基于qrcode.js生成二维码的方法【附demo插件源码下载】
2016/12/28 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
javascript 数据类型转换(parseInt,parseFloat)
2010/07/20 Javascript
网易JS面试题与Javascript词法作用域说明
2010/11/09 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
javascript实现简单的进度条
2015/07/02 Javascript
深入解析AngularJS框架中$scope的作用与生命周期
2016/03/05 Javascript
JS实现图片延迟加载并淡入淡出效果的简单方法
2016/08/25 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
NodeJS整合银联网关支付(DEMO)
2016/11/09 NodeJs
AngularJS实现进度条功能示例
2017/07/05 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
Vue自定义全局弹窗组件操作
2020/08/11 Javascript
原生JavaScript实现进度条
2021/02/19 Javascript
Vue-router编程式导航的两种实现代码
2021/03/04 Vue.js
[01:15:15]VG VS EG Supermajor小组赛B组胜者组第一轮 BO3第二场 6.2
2018/06/03 DOTA
[51:52]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
解决pandas read_csv 读取中文列标题文件报错的问题
2018/06/15 Python
Python实现Restful API的例子
2019/08/31 Python
Python 实现将数组/矩阵转换成Image类
2020/01/09 Python
使用Python内置模块与函数进行不同进制的数的转换
2020/04/26 Python
西班牙手机之家:Phone House
2018/10/18 全球购物
医院工作检讨书范文
2014/02/10 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
QQ空间主人寄语大全
2014/04/12 职场文书
三好学生个人先进事迹材料
2014/05/17 职场文书
个人四风问题对照检查材料思想汇报
2014/10/06 职场文书
2014年文明创建工作总结
2014/11/25 职场文书
龙潭大峡谷导游词
2015/02/10 职场文书
2016年党员创先争优承诺书
2016/03/25 职场文书