jQuery数组处理方法汇总


Posted in Javascript onJune 20, 2011

$.each(array, [callback])遍历,很常用

var arr = ['javascript', 'php', 'java', 'c++', 'c#', 'perl', 'vb', 'html', 'css', 'objective-c']; 
$.each(arr, function(key, val) { 
// firebug console 
console.log('index in arr:' + key + ", corresponding value:" + val); 
// 如果想退出循环 
// return false; 
});

$.grep(array, callback, [invert])过滤,常用
var temp = []; 
temp = $.grep(arr, function(val, key) { 
if(val.indexOf('c') != -1) 
return true; 
// 如果[invert]参数不给或为false, $.grep只收集回调函数返回true的数组元素 
// 反之[invert]参数为true, $.grep收集回调函数返回false的数组元素 
}, false); 
console.dir(temp);

$.map(array, [callback])用的不是太多
//1.6之前的版本只支持数组 
temp = $.map(arr, function(val, key) { 
//返回null,返回的数组长度减1 
if(val === 'vb') return null; 
return val; 
}); 
console.dir(temp); 
//1.6开始支持json格式的object 
var obj = {key1: 'val1', key2: 'val2', key3: 'val3'}; 
temp = $.map(obj, function(val, key) { 
return val; 
}); 
console.dir(temp);

$.inArray(val, array)判断是否在指定数组中,常用
//返回元素在数组中的位置,0为起始位置,返回-1则未找到该元素 
console.log($.inArray('javascript', arr));

$.merge(first, second)合并两个数组,使用频率一般
var frontEnd = ['javascript', 'css', 'html'], 
backEnd = ['java', 'php', 'c++']; 
// 这种方式会修改第一个参数, 即frontEnd数组 
temp = $.merge(frontEnd, backEnd); 
console.dir(temp); 
console.dir(frontEnd); 
// 可以用下面的方式来避免对原数组的影响 
// $.merge($.merge([], frontEnd), backEnd);

$.unique(array)过滤数组中的重复元素,不常用
<DIV>blahblahblah....</DIV> 
<DIV></DIV> 
<DIV class=dup></DIV> 
<DIV class=dup></DIV> 
<DIV class=dup></DIV> 
<DIV></DIV> 
// $.unique只支持DOM元素数组,去除重复DOM元素,不支持其他类型数组(String或者Number) 
// 获得原始的DOM数组,而不是jQuery封装的 
var divs = $('div').get(); 
// 增加几个class为dup的div 
divs = divs.concat($('div.dup').get()); 
console.log("before unique:" + divs.length); 
divs = $.unique(divs); 
console.log("after unique:" + divs.length);

$.makeArray(obj)将类数组对象转成数组,不常用
//首先什么是类数组对象?jQuery官网上用divs = getElementsByTag('div')来做例子 
//这个divs有类似数组的一些方法比如length,通过[index]方式获取元素等 
//然后通过$.makeArray(divs)使它转为数组,就可以用数组的其他功能 
//比如reverse(), pop()等

$(dom).toArray()将jQuery集合恢复成DOM数组,不常用
 
//跟makeArray一样,相当的不常用,一般情况可以忽略
本文参考Mr.Think的blog,在此感谢分享
Javascript 相关文章推荐
Javascript常考语句107条收集
Mar 09 Javascript
Jquery实现显示和隐藏的4种简单方式
Aug 28 Javascript
Jquery实现自定义tooltip示例代码
Feb 12 Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 Javascript
一个JavaScript操作元素定位元素的实例
Oct 29 Javascript
JavaScript字符串常用类使用方法汇总
Apr 14 Javascript
基于jQuery实现返回顶部实例代码
Jan 01 Javascript
jQuery实现移动端Tab选项卡效果
Mar 15 Javascript
使用jQuery实现鼠标点击左右按钮滑动切换
Aug 04 jQuery
初识 Vue.js 中的 *.Vue文件
Nov 22 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
Dec 07 Javascript
微信小程序日历弹窗选择器代码实例
May 09 Javascript
jQuery UI AutoComplete 使用说明
Jun 20 #Javascript
jQuery 源码分析笔记(3) Deferred机制
Jun 19 #Javascript
jQuery 源码分析笔记(7) Queue
Jun 19 #Javascript
jQuery 源码分析笔记(5) jQuery.support
Jun 19 #Javascript
jQuery调用WebService的实现代码
Jun 19 #Javascript
非常棒的10款jQuery 幻灯片插件
Jun 14 #Javascript
在jquery中处理带有命名空间的XML数据
Jun 13 #Javascript
You might like
php基础知识:函数基础知识
2006/12/13 PHP
解析PHP 5.5 新特性
2013/07/02 PHP
PHP实现的MongoDB数据库操作类分享
2014/05/12 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
一个加载js文件的小脚本
2007/06/28 Javascript
javaScript Array(数组)相关方法简述
2009/07/25 Javascript
远离JS灾难css灾难之 js私有函数和css选择器作为容器
2011/12/11 Javascript
jquery 追加tr和删除tr示例代码
2013/09/12 Javascript
jquery移除、绑定、触发元素事件使用示例详解
2014/04/10 Javascript
浅谈jQuery中对象遍历.eq().first().last().slice()方法
2014/11/26 Javascript
跟我学习javascript的异步脚本加载
2015/11/20 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
DOM 事件的深入浅出(二)
2016/12/05 Javascript
AngularJS封装指令方法详解
2016/12/12 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
JavaScript实用代码小技巧
2018/08/23 Javascript
原生js实现下拉选项卡
2019/11/27 Javascript
JavaScript实时更新当前的时间的示例代码
2020/07/15 Javascript
[03:59]5分钟带你了解什么是DOTA2(第二期)
2017/02/07 DOTA
[46:53]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Django自定义认证方式用法示例
2017/06/23 Python
python中numpy.zeros(np.zeros)的使用方法
2017/11/07 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
Centos部署django服务nginx+uwsgi的方法
2019/01/02 Python
python_array[0][0]与array[0,0]的区别详解
2020/02/18 Python
css3.0 图形构成实例练习二
2013/03/19 HTML / CSS
学校安全教育制度
2014/01/31 职场文书
教师个人读书活动总结
2014/07/08 职场文书
自愿离婚协议书范本
2014/09/13 职场文书
卫校毕业生自我鉴定
2014/09/28 职场文书
2015年党总支工作总结
2015/05/25 职场文书
老人节主持词
2015/07/04 职场文书
党性教育心得体会(共6篇)
2016/01/21 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
分析并发编程之LongAdder原理
2021/06/29 Java/Android