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格式的object
var 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)过滤数组中的重复元素,不常用
blahblahblah....
1
2
3
4
5
6
7
8
9
// $.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)将类数组对象转成数组,不常用
1
2
3
4
5
//首先什么是类数组对象?jQuery官网上用divs = getElementsByTag('div')来做例子
//这个divs有类似数组的一些方法比如length,通过[index]方式获取元素等
//然后通过$.makeArray(divs)使它转为数组,就可以用数组的其他功能
//比如reverse(), pop()等
$(dom).toArray()将jQuery集合恢复成DOM数组,不常用
1
2
//跟makeArray一样,相当的不常用,一般情况可以忽略

jQuery数组处理汇总的更多相关文章

  1. jquery基础知识汇总

    jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...

  2. JavaScript jQuery 中定义数组与操作及jquery数组操作

    首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...

  3. JQuery数组详解(含实例)

    <!doctype html>jQuery数组处理详解(含实例演示)@Mr.Think 演示所用数组 var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; 1 ...

  4. jquery数组删除指定元素的方法:grep()

    jquery数组删除指定元素的方法:grep() 金刚 数组 jquery javascript 元素 遇到的问题 今天遇到一个问题,删除数组中的一个指定元素,并返回新的数组. 我定义的js数组是这样 ...

  5. jquery数组内多维对象

    jquery数组内多维对象 var postData=[],obj,list; obj = !!obj ? obj : $('#dist_meici_checkinfo_form'); obj.fin ...

  6. Jquery数组操作

    jQuery的数组处理,便捷,功能齐全. 最近的项目中用到的比较多,深感实用,一步到位的封装了很多原生js数组不能企及的功能. 最近时间紧迫,今天抽了些时间回过头来看 jQuery中文文档 中对数组的 ...

  7. jquery数组之存放checkbox全选值示例代码

    使用jquery数组可以存放checkbox全选值,下面有个不错的示例,感兴趣的朋友可以参考下. 复制代码代码如下: <input type="checkbox" id=&q ...

  8. PHP数组操作汇总

    php 操作数组 (合并,拆分,追加,查找,删除等) - Just Code - ITeye技术网站 PHP操作数组的一些函数介绍 -- 简明现代魔法 PHP数组元素操作实例 -- 简明现代魔法 儿童 ...

  9. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

随机推荐

  1. 论文阅读之:Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network

    Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network  2016.10.23 摘要: ...

  2. ES TIPS

    1,Testing Analyzers Especially when you are new to Elasticsearch, it is sometimes difficult to under ...

  3. How do you build a database?

    在reddit上看到的一篇讲解数据库实现的文章,非常有意思,在这里记录一下. 回答者technical_guy: Its a great question, and deserves a long a ...

  4. Intellij IDEA连接Git@OSC

    错误提示:fatal: remote origin already exists. 解决办法:$ git remote rm origin http://my.oschina.net/lujianin ...

  5. jq+jsonp+ajax解决跨域问题

    Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料. 关于Jsonp更详细的资料请参考http://baike.baidu.com/ ...

  6. C++中没有finally,那么应该在如何关闭资源

    这是一篇有趣的帖子 原文链接: http://bbs.csdn.net/topics/90070457 楼主: C++中没有finally,那么应该在哪里关闭资源? C++的try{}catch(){ ...

  7. 安全沙箱冲突:Loader.content:XX 不能访问 XX 可以通过调用 Security.allowDomain 来避免此冲突。

    参考资料:http://tieba.baidu.com/p/882855105 感谢:Z0287yyy 感谢分享精神. 具体解决方案:在loader去load的时候,带上这个参数 var contex ...

  8. libpcap和WinPcap

    能从物理上访问网络上的流量后,你需要用软件把它记录下来.这里,我们探究记录.解析和分析被捕获的数据包中最常用的软件库:libpcap和WinPcap.也将介绍包括tcpdump.Wireshark等基 ...

  9. java 线程的让步

    //线程的让步 // //线程 class xc1 implements Runnable{ public void run(){ for(int i=1;i<=30;i++){ System. ...

  10. Spring container vs SpringMVC container(webmvc container)

    Difference between applicationContext.xml and spring-servlet.xml in Spring Framework Scenario 1 In c ...