Jquery中对数组的操作



一、遍历


$.each(arr, callback(key, val));


1、回调函数拥有两个参数:第一个为对象的成员或数组的索引, 第二个为对应变量或内容

2、如果需要退出 each 循环,可使回调函数返回 false,用return false, 其它返回值将被忽略.

3、例如

 

var arr = [1, 2, 3, 4];
$.each(arr, function(key, val) {   
    console.log(arr[key] + '下标为' + key + '值为' + val);
    // 如果想退出循环
    // return false;
});




二、筛选


$.grep(arr, callback, invert)


1、此函数至少传递两个参数,第三个参数为true或false,对过滤函数返回值取反


2、默认invert为false, 即过滤函数返回true为保留元素. 如果设置invert为true, 则过滤函数返回true为删除元素.


3、过滤函数必须返回 true 以保留元素或 false 以删除元素.


4、例如


 

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




三、转换


$.map(arr,callback(key,val))


1、将一个数组中的元素转换到另一个数组中。


2、和each函数差不多,  区别就是回调函数可以改变当前元素.返回null则删除当前元素.


3、例如


 

var a = [1, 2, 3, 4];
$.map(a, function(val, key) { 
   //返回null,返回的数组长度减1
   if(val == 'vb') return null;
    if (a[key] > 2) {
        a[key]=val+1;
    }
    return val;              
});



四、合并


$.merge(arr1,arr2)


1、arr1后面加上arr2后返回arr1


2、例如


 

var frontEnd = ['javascript', 'css', 'html'], 
    backEnd = ['java', 'php', 'c++']; 
 // 这种方式会修改第一个参数, 即frontEnd数组 
 temp = $.merge(frontEnd, backEnd); 

 // 可以用下面的方式来避免对原数组的影响 
 // $.merge($.merge([], frontEnd), backEnd); 




文章转载自: Jquery对数组的操作   http://www.studyofnet.com/news/999.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值