`

[转]jQuery数组处理汇总

阅读更多
$.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)过滤数组中的重复元素,不常用
// $.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一样,相当的不常用,一般情况可以忽略

 

 

原文网址: http://www.cnblogs.com/AndyWithPassion/archive/2011/06/20/jquery_array_process.html

    showCheckedVersion: function() {

        var andVIDArr = page.andVIDArr;
        console.log(andVIDArr);
        // var tabId = $('#tabId').val();
        // var childVID = $('#specialChildVID').val();
        // $('#special_'+tabId).prop('checked', true);
        // $('#special_child_'+childVID).prop('checked', true);
        $("#versionsDiv input[name='andVersion']").each(function(i,obj){
            //i,迭代的下标,从0开始
            //obj,当前的对象(HTMLInputElement),可以使用obj.value格式获取属性值
            //$(this);当前jQuery对象,可以使用$(this).val()获取属性值
            var objIdStr = obj.id;
            var vTmpArr = objIdStr.split('_');
            var verId = vTmpArr[1];

            console.log(verId);
            if ($.inArray(verId, andVIDArr) !== -1) {
                $(obj).prop('checked', true);
            }

            // console.log(obj.id);
            // console.log($(this).val());
        });
    },
 
// $('#starttime').datepicker({
//     format: 'yyyy.mm.dd',
//     weekStart: 1,
//     autoclose: true,
//     todayBtn: 'linked',
//     language: 'zh-CN'
// }).on('changeDate',function(ev){
//     var startTime = ev.date.valueOf();
//     // if(start<teach){
//     //     alert("“评估开始时间 ”不能早于“授课时间 ” !");
//     //     $("#starttime").focus();
//     // }
//  });

// $('#endtime').datepicker({
//     format: 'yyyy.mm.dd',
//     weekStart: 1,
//     autoclose: true,
//     todayBtn: 'linked',
//     language: 'zh-CN'
// }).on('changeDate',function(ev){
//     var endTime = ev.date.valueOf();
//     end = endTime;
//     if(end<start){
//       alert("“评估结束时间 ”不能早于“评估开始时间 ” !");
//     }
// });
分享到:
评论

相关推荐

    jQuery数组处理方法汇总

    以下是关于jQuery数组处理方法的详细汇总: 1. **$.each(array, [callback])**:这是一个通用的遍历方法,可以用于遍历数组或对象。在数组上下文中,`callback`函数接收两个参数,分别是当前元素的索引`key`和值`...

    jQuery 数组全家桶 (最大、最小、求和、平均值、排序、元素出现次数、去重)的方法

    本篇文章主要介绍了求JS数组的一些方法,具有很好的参考价值。 给定数组[25,28,8,65,25,32,40,68],求其最大值、最小值 、求和、平均值、排序、元素出现次数、去重等相关问题解决方法? 1、最大值和最小值的不同...

    jquery开发入门整理(所需要了解的)

    ### jQuery数组处理完全详解(实例演示) jQuery并没有专门针对数组的操作方法,但它可以通过标准的JavaScript数组方法来操作数组。此外,jQuery提供的工具函数如`$.each()`、`$.map()`等可以方便地应用于数组处理。 ...

    JavaScript数组常用操作技巧汇总

    这篇文章将汇总JavaScript数组的一些常用操作技巧,帮助开发者更好地理解和利用数组功能解决问题。 ### 一、数组的性质 在JavaScript中,数组本质上是特殊的对象,其属性是通过偏移量的索引来表示的。虽然我们可以...

    JQuery工具函数汇总

    在jQuery中,工具函数是指直接依附于jQuery对象,针对jQuery对象本身定义的方法,即全局性的,我们统称为工具函数,或Utilites函数 主要作用于:字符串、数组、对象 API:工具函数 调用格式:  $.函数名()或jQuery.函数名...

    js数组去重-duplicateRemoval

    在JavaScript编程中,数组去重是一项常见的操作,特别是在处理数据集合时。本篇文章将深入探讨如何使用原生JavaScript以及jQuery的$.inArray方法来实现数组去重。 首先,让我们了解JavaScript数组的一些基本特性。...

    jQuery使用each方法与for语句遍历数组示例

    对于jQuery编程人员而言,掌握这两种遍历数组的技巧是非常实用的,能够帮助他们在不同的场景下选择更加合适的方法来处理数组数据。同时,文章末尾提供的一系列关于jQuery的进阶学习资源,也将有助于读者进一步提升在...

    jquery datatable 单元格合并

    在某些场景下,我们可能需要对表格中的单元格进行合并,以便更好地展示数据,例如汇总或者分类。本篇将详细介绍如何使用jQuery DataTables结合JavaScript来实现相同内容单元格的动态合并。 首先,我们需要理解...

    jQuery操作Table技巧大汇总

    jQuery操作Table技巧大汇总主要涵盖了如何使用jQuery对HTML表格进行一系列的交互和样式修改,包括鼠标响应、样式调整、行和列的隐藏与删除,以及单元格内容的获取与设置等。以下是对这些技巧的详细解释: 1. 鼠标...

    JQuery 50个常用方法汇总

    **jQuery 是一个高效、简洁且易学的JavaScript库,它极大地简化了JavaScript代码的编写,尤其是在处理DOM操作、事件处理和Ajax交互时。本篇文章将详细介绍jQuery中的50个常用方法,帮助开发者更好地掌握和应用jQuery...

    JQuery官方资料搜集

    本文档主要汇总了与JQuery相关的官方资料,涵盖了JavaScript中的各种数据类型和概念,这些知识对于理解和使用JQuery至关重要。 1. **字符串(String)** - **引号引用**:在JavaScript中,字符串可以用单引号或双...

    Jquery常用的方法汇总

    - jQuery对象可以使用数组索引的方式访问单个DOM元素,如$("#foo")[0]。 - DOM对象可以通过$()函数转换成jQuery对象,如$(document.getElementById("foo"))。 5. 解决库冲突 - 如果jQuery和其他JavaScript库发生...

    js数组与字符串常用方法总结

    它们各自有一系列的方法来处理和操作数据。这里我们将深入探讨这些方法。 首先,我们来看看字符串的一些常用方法: 1. `substring(start, end)`:这个方法用于从字符串中截取一部分。`start`参数是开始位置,`end`...

    jQuery表格插件datatables用法汇总

    这些数据通常是一个Map对象,其中包含"data"键,其值为一个数组或列表。 10. 特殊配置项解释。在实际使用中,DataTables的某些配置可能不会立即明白其用途。例如,"autoWidth"、"zeroRecords"、"pagingType"和...

    前端js面试题WORD.docx

    本资源摘要信息汇总了前端JS面试题中的一些重要知识点,涵盖了JQuery选择器、JQuery插件实现方式、bind和live方法的区别、JS和JQ对象的转换、去除数组重复项等内容。 一、JQuery选择器 JQuery选择器是JQuery库中最...

    jQuery中判断对象是否存在的方法汇总

    值得注意的是,jQuery提供了更丰富的API来处理DOM元素,比如`.is()`, `.size()`等,但这些方法在最新的jQuery版本中已经被弃用,推荐使用`.length`。例如,`.is(":visible")`可以用来判断元素是否可见,但它并不能...

    jq弹性表格控件

    **jq弹性表格控件**,也被称为`tilesjs`,是一种基于jQuery的高效、灵活的表格展示解决方案。这种控件的主要特点是能够自动伸缩,适应表格数据量的变化,为用户提供流畅的浏览体验。在Web应用中,特别是在数据密集型...

Global site tag (gtag.js) - Google Analytics