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 相关文章推荐
dojo随手记 gird组件引用
Feb 24 Javascript
Javascript 异步加载详解(浏览器在javascript的加载方式)
May 20 Javascript
浅析jQuery1.8的几个小变化
Dec 10 Javascript
node.js中的fs.truncate方法使用说明
Dec 15 Javascript
JS实现仿Windows经典风格的选项卡Tab切换代码
Oct 20 Javascript
JavaScript实战之带收放动画效果的导航菜单
Aug 16 Javascript
谈谈Vue.js——vue-resource全攻略
Jan 16 Javascript
vue2.0结合Element-ui实战案例
Mar 06 Javascript
小程序如何写动态标签的实现方法
Feb 05 Javascript
简单了解常用的JavaScript 库
Jul 16 Javascript
Javascript类型判断相关例题及解析
Aug 26 Javascript
JavaScript常用8种数组去重代码实例
Sep 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制作简单分页(从数据库读取记录)的方法详解
2013/05/04 PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
2013/06/18 PHP
php和vue配合使用技巧和方法
2019/05/09 PHP
php实现推荐功能的简单实例
2019/09/29 PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
2019/10/24 PHP
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
2013/08/13 Javascript
javascript正则表达式之search()用法实例
2015/01/19 Javascript
jquery实现的动态回到顶部特效代码
2015/10/28 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
10分钟掌握XML、JSON及其解析
2020/12/06 Javascript
Javascript基础回顾之(一) 类型
2017/01/31 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
2019/02/13 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
利用Python的Django框架中的ORM建立查询API
2015/04/20 Python
剖析Django中模版标签的解析与参数传递
2015/07/21 Python
再谈Python中的字符串与字符编码(推荐)
2016/12/14 Python
Python外星人入侵游戏编程完整版
2020/03/30 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
2019/06/04 Python
Django对数据库进行添加与更新的例子
2019/07/12 Python
解决django中ModelForm多表单组合的问题
2019/07/18 Python
python实现静态服务器
2019/09/05 Python
在python中计算ssim的方法(与Matlab结果一致)
2019/12/19 Python
Python中断多重循环的几种方式详解
2020/02/10 Python
python中逻辑与或(and、or)和按位与或异或(&amp;、|、^)区别
2020/08/05 Python
CSS3 3D制作实战案例分析
2016/09/18 HTML / CSS
Html5百叶窗效果的示例代码
2017/12/11 HTML / CSS
美国浴缸、水槽和水龙头购物网站:Vintage Tub & Bath
2019/11/05 全球购物
文明班级建设方案
2014/05/15 职场文书
2014年四风问题自我剖析材料
2014/09/15 职场文书
个人买房协议书范本
2014/10/06 职场文书
Python中的 No Module named ***问题及解决
2022/07/23 Python