jQuery数组处理代码详解(含实例演示)


Posted in Javascript onFebruary 03, 2012

演示所用数组

var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤'];

1. $.each遍历示例[常用]

$.each(_mozi,function(key,val){ 
//回调函数有两个参数,第一个是元素索引,第二个为当前值 
alert('_mozi数组中 ,索引 : '+key+' 对应的值为: '+val); 
});

2. $.grep()过滤数组[常用]

$.grep(_mozi,function(val,key){ 
//过滤函数有两个参数,第一个为当前元素,第二个为元素索引 
if(val=='墨子'){ 
alert('数组值为 墨子 的下标是: '+key); 
} 
}); 
var _moziGt1=$.grep(_mozi,function(val,key){ 
return key>1; 
}); 
alert('_mozi数组中索引值大于1的元素为: '+_moziGt1); 
var _moziLt1=$.grep(_mozi,function(val,key){ 
return key>1; 
},true); 
//此处传入了第三个可靠参数,对过滤函数中的返回值取反 
alert('_mozi数组中索引值小于等于1的元素为: '+_moziLt1);

3. $.map()按给定条件转换数组[一般]

var _mapArrA=$.map(_mozi,function(val){ 
return val+'[新加]'; 
}); 
var _mapArrB=$.map(_mozi,function(val){ 
return val=='墨子' ? '[只给墨子加]'+val : val; 
}); 
var _mapArrC=$.map(_mozi,function(val){ 
//为数组元素扩展一个新元素 
return [val,(val+'[扩展]')]; 
}); 
alert('在每个元素后面加\'[新加]\'字符后的数组为: '+ _mapArrA); 
alert('只给元素 墨子 添加字符后的数组为: '+ _mapArrB); 
alert('为原数组中每个元素,扩展一个添加字符\'[新加]\'的元素,返回的数组为 '+_mapArrC);

4. $.inArray()判断值是否存在于数组中[常用]
 

var _exist=$.inArray('墨子',_mozi); 
var _inexistence=$.inArray('卫鞅',_mozi) 
if(_exist>=0){ 
alert('墨子 存在于数组_mozi中,其在数组中索引值是: '+_exist); 
} 
if(_inexistence<0){ 
alert('卫鞅 不存在于数组_mozi中!,返回值为: '+_inexistence+'!'); 
}

5. $.merge()合并两个数组[一般]

//原生concat()可能比它还简洁点 
_moziNew=$.merge(_mozi,['鬼谷子','商鞅','孙膑','庞涓','苏秦','张仪']) 
alert('合并后新数组长度为: '+_moziNew.length+'. 其值为: '+_moziNew);

6. $.unique()过滤数组中重复元素[不常用]

var _h2Arr=$.makeArray(h2obj); 
//将数组_h2Arr重复一次 
_h2Arr=$.merge(_h2Arr,_h2Arr); 
var _curLen=_h2Arr.length; 
_h2Arr=$.unique(_h2Arr); 
var _newLen=_h2Arr.length; 
alert('数组_h2Arr原长度值为: '+_curLen+' ,过滤后为: '+_newLen 
+' .共过滤 '+(_curLen-_newLen)+'个重复元素')

7. $.makeArray()类数组对象转换为数组[不常用]

var _makeArr=$.makeArray(h2obj); 
alert('h2元素对象集合的数据类型转换为: '+_makeArr.constructor.name);

8. $.toArray()将所有DOM元素恢复成数组[不常用]

var _toArr=$('h2').toArray(); 
alert('h2元素集合恢复后的数据类型是: '+_toArr.constructor.name);
Javascript 相关文章推荐
javascript 检测浏览器类型和版本的代码
Sep 15 Javascript
JQuery循环滚动图片代码
Dec 08 Javascript
给html超链接设置事件不使用href来完成跳
Apr 20 Javascript
jQuery实现磁力图片跟随效果完整示例
Sep 16 Javascript
js实现碰撞检测特效代码分享
Oct 16 Javascript
Vue.js系列之vue-router(上)(3)
Jan 03 Javascript
JS中的Replace()传入函数时的用法详解
Sep 11 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
Sep 17 Javascript
jQuery动态生成的元素绑定事件操作实例分析
May 04 jQuery
js实现小星星游戏
Mar 23 Javascript
vue treeselect获取当前选中项的label实例
Aug 31 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
Feb 23 Vue.js
8款非常棒的响应式jQuery 幻灯片插件推荐
Feb 02 #Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
Feb 02 #Javascript
JavaScript初学者应注意的七个细节小结
Jan 30 #Javascript
面向对象的Javascript之三(封装和信息隐藏)
Jan 27 #Javascript
面向对象的Javascript之二(接口实现介绍)
Jan 27 #Javascript
js String对象中常用方法小结(字符串操作)
Jan 27 #Javascript
getElementByIdx_x js自定义getElementById函数
Jan 24 #Javascript
You might like
我的论坛源代码(五)
2006/10/09 PHP
PHP语言中global和$GLOBALS[]的分析 之二
2012/02/02 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
2014/12/16 PHP
js 内存释放问题
2010/04/25 Javascript
JavaScript prototype属性使用说明
2010/05/13 Javascript
Jquery工作常用实例 使用AJAX使网页进行异步更新
2011/07/26 Javascript
解决jquery的datepicker的本地化以及Today问题
2012/05/23 Javascript
js 获取class的元素的方法 以及创建方法getElementsByClassName
2013/03/11 Javascript
jQuery布局插件UI Layout简介及使用方法
2013/04/03 Javascript
js 用CreateElement动态创建标签示例
2013/11/20 Javascript
jquery中ajax使用error调试错误的方法
2015/02/08 Javascript
jquery实现上下左右滑动的方法
2015/02/09 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
2015/09/26 Javascript
浅谈js中调用函数时加不加括号的问题
2016/07/28 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
three.js绘制地球、飞机与轨迹的效果示例
2017/02/28 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
Node.js 中使用 async 函数的方法
2017/11/20 Javascript
vue 国际化 vue-i18n 双语言 语言包
2018/06/07 Javascript
微信小程序实现两边小中间大的轮播效果的示例代码
2018/12/07 Javascript
如何能分清npm cnpm npx nvm
2019/01/17 Javascript
使用Node.js在深度学习中做图片预处理的方法
2019/09/18 Javascript
jQuery实现弹出层效果
2019/12/10 jQuery
python正则表达式判断字符串是否是全部小写示例
2013/12/25 Python
Python 多进程和数据传递的理解
2017/10/09 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
Python求离散序列导数的示例
2019/07/10 Python
python rsa-oaep加密的示例代码
2020/09/23 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
社区健康教育工作方案
2014/06/03 职场文书
Python机器学习之底层实现KNN
2021/06/20 Python
MySQL数据库10秒内插入百万条数据的实现
2021/11/01 MySQL
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL
nginx内存池源码解析
2021/11/20 Servers