浅析jquery数组删除指定元素的方法:grep()


Posted in Javascript onMay 19, 2016

遇到的问题

今天遇到一个问题,删除数组中的一个指定元素,并返回新的数组。

我定义的js数组是这样的:

var sexList=new Array[3];
sexList[0]="1";
sexList[1]="2";
sexList[2]="";

想达到的效果

我想达到的效果是这样的:

删除索引=1的元素,并返回新数组。

返回的结果是:

var sexList=new Array("1","");

我们知道,原生的javascript有一个函数:splice() 方法,可以删除数组中的指定元素。

关于splice()方法的具体用法,可以参考w3school的描述,这里不多做解释:http://www.w3school.com.cn/jsref/jsref_splice.asp

使用splice()的实现代码

我的实现代码:

var sexList=new Array[3];
sexList[0]="1";
sexList[1]="2";
sexList[2]="";
sexList=sexList.splice(1,1);

但是我发现我的数组使用这种方式时,返回的数组是不符合预期的。返回的是个空字符串。

后来网上搜索jquery的相关API,发现一个函数:grep()

grep()使用方法说明

jQuery.grep(array, callback, [invert])

概述

使用过滤函数过滤数组元素。

此函数至少传递两个参数:待过滤数组和过滤函数。过滤函数必须返回 true 以保留元素或 false 以删除元素。

参数

英文名 参数中文说明
array: 待过滤数组。
callback: 此函数将处理数组每个元素。第一个参数为当前元素,第二个参数而元素索引值。此函数应返回一个布尔值。另外,此函数可设置为一个字符串,当设置为字符串时,将视为“lambda-form”(缩写形式?),其中 a 代表数组元素,i 代表元素索引值。如“a > 0”代表“function(a){ return a > 0; }”。
invert: 如果 "invert" 为 false 或为设置,则函数返回数组中由过滤函数返回 true 的元素,当"invert" 为 true,则返回过滤函数中返回 false 的元素集。

使用grep()的实现代码

sexList=$.grep(sexList,function(n,i){
return i!=1;
});

function(n,i)中

n:表示数组的单个实体,

i:表示数组的索引。

以上这篇浅析jquery数组删除指定元素的方法:grep()就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript最常用与实用的创建类的代码
Aug 12 Javascript
让textarea自动调整大小的js代码
Apr 12 Javascript
JS实现div内部的文字或图片自动循环滚动代码
Apr 19 Javascript
JS 两个字符串时间的天数差计算
Aug 25 Javascript
php跨域调用json的例子
Nov 13 Javascript
jQuery的几个我们必须了解的特点
May 03 Javascript
jQuery实现拖拽页面元素并将其保存到cookie的方法
Jun 12 Javascript
AngularJS教程 ng-style 指令简单示例
Aug 03 Javascript
微信小程序获取手机号授权用户登录功能
Nov 09 Javascript
使用Vuex实现一个笔记应用的方法
Mar 13 Javascript
微信小程序之onLaunch与onload异步问题详解
Mar 28 Javascript
Vue filter 过滤当前时间 实现实时更新效果
Dec 20 Javascript
基于jQuery的Web上传插件Uploadify使用示例
May 19 #Javascript
JavaScript中的数组遍历forEach()与map()方法以及兼容写法介绍
May 19 #Javascript
当jquery ajax遇上401请求的解决方法
May 19 #Javascript
基于Echarts 3.19 制作常用的图形(非静态)
May 19 #Javascript
前端js文件合并的三种方式推荐
May 19 #Javascript
Node.js+Express配置入门教程
May 19 #Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
May 19 #Javascript
You might like
ZF等常用php框架中存在的问题
2008/01/10 PHP
PHP中=赋值操作符对不同数据类型的不同行为
2011/01/02 PHP
zend framework多模块多布局配置
2011/02/26 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
解决tp5在nginx下修改配置访问的问题
2019/10/16 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
JavaScript 对象、函数和继承
2009/07/07 Javascript
JQuery与iframe交互实现代码
2009/12/24 Javascript
jquery 插件学习(四)
2012/08/06 Javascript
微信小程序 rpx 尺寸单位详细介绍
2016/10/13 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
基于Python Numpy的数组array和矩阵matrix详解
2018/04/04 Python
pyqt 多窗口之间的相互调用方法
2019/06/19 Python
使用python模拟命令行终端的示例
2019/08/13 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
Python数据可视化:饼状图的实例讲解
2019/12/07 Python
使用python检查yaml配置文件是否符合要求
2020/04/09 Python
python如何运行js语句
2020/09/09 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
2020/12/01 Python
Desigual英国官网:在线购买原创服装
2018/03/09 全球购物
Bailey帽子官方商店:Bailey Hats
2018/09/25 全球购物
失业者真诚求职信范文
2013/12/25 职场文书
采购部经理岗位职责
2014/02/10 职场文书
2014年小学植树节活动方案
2014/03/02 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
社区反邪教工作方案
2014/06/16 职场文书
2015年学校图书室工作总结
2015/05/19 职场文书
导游词之广州陈家祠
2019/10/21 职场文书
golang中实现给gif、png、jpeg图片添加文字水印
2021/04/26 Golang
MySQL创建高性能索引的全步骤
2021/05/02 MySQL