浅析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 实用小技巧
Apr 07 Javascript
prettify 代码高亮着色器google出品
Dec 28 Javascript
用JS实现一个TreeMenu效果分享
Aug 28 Javascript
jWiard 基于JQuery的强大的向导控件介绍
Oct 28 Javascript
jquery ajax同步异步的执行最终解决方案
Apr 26 Javascript
js图片延迟技术一般的思路与示例
Mar 20 Javascript
jQuery实现页面滚动时动态加载内容的方法
Mar 20 Javascript
浅谈JS的基础类型与引用类型
Sep 13 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
Jan 04 Javascript
JavaScript中利用构造器函数模拟类的方法
Feb 16 Javascript
BootStrap表单宽度设置方法
Mar 10 Javascript
vue中的.$mount('#app')手动挂载操作
Sep 02 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
探讨php define()函数及defined()函数使用详解
2013/06/09 PHP
thinkPHP的表达式查询用法详解
2016/09/14 PHP
JavaScript随机排序(随即出牌)
2010/09/17 Javascript
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
jQuery.each()用法分享
2012/07/31 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
html组件不可输入(只读)同时任何组件都有效
2013/04/01 Javascript
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
js去除浏览器默认底图的方法
2015/06/08 Javascript
jQuery实现类似标签风格的导航菜单效果代码
2015/08/25 Javascript
手机浏览器 后退按钮强制刷新页面方法总结
2016/10/09 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
React组件中的this的具体使用
2018/02/28 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
2018/09/14 Javascript
vue-cli3.0 环境变量与模式配置方法
2018/11/08 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
2020/06/02 Javascript
浅谈JavaScript中this的指向问题
2020/07/28 Javascript
[01:15:45]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第一局
2016/02/26 DOTA
[01:59]翻天覆地,因你而变,7.20版本地图更新速览
2018/11/24 DOTA
python将MongoDB里的ObjectId转换为时间戳的方法
2015/03/13 Python
Python模拟百度登录实例详解
2016/01/20 Python
python实现windows下文件备份脚本
2018/05/27 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
Python HTMLTestRunner可视化报告实现过程解析
2020/04/10 Python
python输出数学符号实例
2020/05/11 Python
Python astype(np.float)函数使用方法解析
2020/06/08 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
台湾流行服饰购物平台:OB严选
2018/01/21 全球购物
Bailey帽子官方商店:Bailey Hats
2018/09/25 全球购物
应聘医学检验人员自荐信
2013/09/27 职场文书
小溪流的歌教学反思
2014/02/13 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
2014年银行年终工作总结
2014/12/19 职场文书
2019员工保密协议书(3篇)
2019/09/23 职场文书