jQuery数组处理汇总
jQuery数组处理汇总
有段时间没写什么了, 打算把jquery中的比较常用的数组处理方法汇总一下
$.each(array, [callback])遍历,很常用
|
1
2
3
4
5
6
7
8
|
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])过滤,常用
|
1
2
3
4
5
6
7
8
9
|
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
2
3
4
5
6
7
8
9
10
11
12
13
14
|
//1.6之前的版本只支持数组temp = $.map(arr, function(val, key) { //返回null,返回的数组长度减1 if(val === 'vb') return null; return val;});console.dir(temp);//1.6开始支持json格式的objectvar obj = {key1: 'val1', key2: 'val2', key3: 'val3'};temp = $.map(obj, function(val, key) { return val;});console.dir(temp); |
$.inArray(val, array)判断是否在指定数组中,常用
|
1
2
3
|
//返回元素在数组中的位置,0为起始位置,返回-1则未找到该元素console.log($.inArray('javascript', arr)); |
$.merge(first, second)合并两个数组,使用频率一般
|
1
2
3
4
5
6
7
8
9
|
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)过滤数组中的重复元素,不常用
|
1
2
3
4
5
6
7
8
9
|
// $.unique只支持DOM元素数组,去除重复DOM元素,不支持其他类型数组(String或者Number)// 获得原始的DOM数组,而不是jQuery封装的var divs = $('div').get();// 增加几个class为dup的divdivs = divs.concat($('div.dup').get());console.log("before unique:" + divs.length);divs = $.unique(divs);console.log("after unique:" + divs.length); |
$.makeArray(obj)将类数组对象转成数组,不常用
|
1
2
3
4
5
|
//首先什么是类数组对象?jQuery官网上用divs = getElementsByTag('div')来做例子//这个divs有类似数组的一些方法比如length,通过[index]方式获取元素等//然后通过$.makeArray(divs)使它转为数组,就可以用数组的其他功能//比如reverse(), pop()等 |
$(dom).toArray()将jQuery集合恢复成DOM数组,不常用
|
1
2
|
//跟makeArray一样,相当的不常用,一般情况可以忽略 |
jQuery数组处理汇总的更多相关文章
- jquery基础知识汇总
jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...
- JavaScript jQuery 中定义数组与操作及jquery数组操作
首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...
- JQuery数组详解(含实例)
<!doctype html>jQuery数组处理详解(含实例演示)@Mr.Think 演示所用数组 var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; 1 ...
- jquery数组删除指定元素的方法:grep()
jquery数组删除指定元素的方法:grep() 金刚 数组 jquery javascript 元素 遇到的问题 今天遇到一个问题,删除数组中的一个指定元素,并返回新的数组. 我定义的js数组是这样 ...
- jquery数组内多维对象
jquery数组内多维对象 var postData=[],obj,list; obj = !!obj ? obj : $('#dist_meici_checkinfo_form'); obj.fin ...
- Jquery数组操作
jQuery的数组处理,便捷,功能齐全. 最近的项目中用到的比较多,深感实用,一步到位的封装了很多原生js数组不能企及的功能. 最近时间紧迫,今天抽了些时间回过头来看 jQuery中文文档 中对数组的 ...
- jquery数组之存放checkbox全选值示例代码
使用jquery数组可以存放checkbox全选值,下面有个不错的示例,感兴趣的朋友可以参考下. 复制代码代码如下: <input type="checkbox" id=&q ...
- PHP数组操作汇总
php 操作数组 (合并,拆分,追加,查找,删除等) - Just Code - ITeye技术网站 PHP操作数组的一些函数介绍 -- 简明现代魔法 PHP数组元素操作实例 -- 简明现代魔法 儿童 ...
- js,jQuery数组常用操作小结
一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...
随机推荐
- 鼠标滚动事件兼容性 wheel、onwheel
wheelEvent = "onwheel" in document.createElement("div") ? "wheel" : // ...
- npm以及gulp相关操作
在工作流相关的第一篇博客中,我们安装了nodejs的环境,那么nodejs自带的npm是一个功能十分强大的管理器,它已经不仅仅是局限于nodejs的版本管理器了,那么当现在我们可以通过npm来下载我们 ...
- Reflector 反编译 .NET文件后修复
反编译后的工程文件用VS2010打开后,在打开窗体时会出现一系列错误提示: 第一种情况: “设计器无法处理第 152 行的代码: base.AutoScaleMode = AutoScaleMode. ...
- SIFT定位算法关键步骤的说明
1. SIFT算法中一些符号的说明 $I(x,y)$表示原图像. $G(x,y,\sigma)$表示高斯滤波器,其中$G(x,y,\sigma) = \frac{1}{2\pi\sigma^2}exp ...
- bzoj1513: [POI2006]Tet-Tetris 3D
Description Task: Tetris 3D "Tetris" 游戏的作者决定做一个新的游戏, 一个三维的版本, 在里面很多立方体落在平面板,一个立方体开始落下直到碰上一 ...
- ucenter 整合外部网站,实现登录等操作
最近公司网站要出手机版,由于与论坛要有互通,实现会员的共享,由于对discuz不熟悉,起先考虑的是直接读取discuz的用户表,然后进行判断等操作,发现过于复杂,而且安全也不好. 前一段时间进行过论坛 ...
- 每天一个 Linux 命令(8):cp 命令
cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是在 ...
- MyEclipse中的重命名
我们要重命名一个函数或变量时,如果手工改会很耗时而且可能会有些遗漏,造成编译错误.这个时候可以在变量或函数定义处,按下MyEclipse的Alter + SHIF + R 重命名,然后按下Enter键 ...
- RabbitMQ、Memcache、Redis(队列、缓存)
RabbitMQ 一.解释 RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Queue, 消 ...
- Blackfin DSP(八):BF533的DMA
#include <cdefBF533.h> #include <sys\exception.h> #define POLC 0x00004000 #define PORT_C ...