zoukankan      html  css  js  c++  java
  • jQuery数组处理详解(含实例演示) (转)

    原方出自Mr.Think的博客:http://mrthink.net/jquery-array-eachgrepinarray/

     

    http://www.cnblogs.com/mrthink/archive/2010/11/29/1890788.html

    jQuery数组处理详解(含实例演示)@Mr.Think
    演示所用数组
    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);
  • 相关阅读:
    FusionSphere产品功能
    openstack各组件详解和通信流程
    素数、杨辉三角、封装结构和集合操作(16)——集合及操作
    素数、杨辉三角、封装结构和集合操作(15)——IPython使用和封装解构
    素数、杨辉三角、封装结构和集合操作(14)——杨辉三角单行覆盖解法
    线性数据结构(13)——求质数
    线性数据结构(12)——菱形、三角形、闪电打印和斐波那契数列计算
    线性数据结构(11)——九九乘法表详解
    Python元组与字符串操作(10)——冒泡法
    lvm调整卷大小
  • 原文地址:https://www.cnblogs.com/pipizhu/p/1891431.html
Copyright © 2011-2022 走看看