`
guirudaoge
  • 浏览: 18598 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

jQuery和JavaScript中对数组的操作

阅读更多

一、将数组转换为字符串
          使用JavaScript中Array的原生方法join()可以高效的将数组转换为字符串,应此常用于链接字符串,它比“+”链接符高效的多。
eg:

var exarr = ["jiuzi","song","zhang","liu","li"];
//将数组转换为以逗号分隔的字符串
var res1 = exarr.join();               //jiuzi,song,zhang,liu,li
//将数组转换为以“-”符号分隔的字符串
var res2 = exarr.join("-");          //jiuzi-song-zhang-liu-li

 

二、遍历数组
          使用jQuery中的 $.each(object,[callback]) 方法进行遍历操作,此方法不同于例遍 jQuery 对象的 $(selector).each() 方法,它可用于例遍任何对象。回调函数拥有两个参数:第一个为对象的成员或数组的索引,第二个为对应变量或内容。如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略。
eg:

//循环exarr并把里面的元素显示到ul标签中
$(function(){
//定义变量
var exarr = ["jiuzi","song","zhang","liu","li"],
      resultArr = ["<ul>"];                                 
$.each(exarr,function(index,value){
resultArr.push("<li>"+value+"</li>");  //对循环体进行操作
});
resultArr.push("</ul>");
$("body").appen(resultArr.join(""));
});

//循环对象exObj中的属性并把属性值显示到ul标签中
$(function(){ 
var exObj = { name:"jiuzi",age:25}, 
    resultArr = ["<ul>"];
$.each(exObj,function(index,value){
  resultArr.push("<li>"+value+"</li>");
});
resultArr.push("</ul>");
$(resultArr.join("")).appendTo($("body"));
});

 


三、操作数组元素
          使用jQuery中的$.map(arr|obj,callback) 方法可以循环对数组或对象中的每个元素或属性进行操作,返回处理后的数组,作为参数的转换函数会为每个数组元素调用,而且会给这个转换函数传递一个表示被转换的元素作为参数。转换函数可以返回转换后的值、null(删除数组中的项目)或一个包含值的数组,并扩展至原始数组中。
eg:

//循环exarr并把里面的元素显示到ul标签中
$(function(){
var exarr = ["jiuzi","song","zhang","liu","li"];
//返回处理后的数组
var resultArr = $.map(exarr,function(value){
return "<li>"+value+"</li>";  //对元素进行操作
          });
          resultArr.unshift("<ul>");//将指定的元素插入数组开始位置并返回该数组。
          resultArr.push("</ul>");
         $(resultArr.join("")).appendTo($("body"));
});

 

四、筛选数组
         使用jQuery中的$.grep(array,fn,[invert])方法可以根据一定的条件过滤数组,返回符合条件的元素。此函数至少传递两个参数:待过滤数组和过滤函数。过滤函数必须返回 true 以保留元素或 false 以删除元素。
eg:

//循环exarr并把里面的元素值得长度小于4的元素显示到ul标签中
$(function(){
     var exarr = ["jiuzi","song","zhang","liu","li"];
     exarr = $.grep(exarr,function(value){
      return value.length>4; //过滤出长度小于4的元素。
     });
     var resultArr = $.map(exarr,function(value){
      return "<li>"+value+"</li>";
     });
     resultArr.unshift("<ul>");
     resultArr.push("</ul>");
  $(resultArr.join("")).appendTo($("body"));
});

 


五、数组排序
          使用JavaScript中Array的原生方法arrayobj.sort(sortfunction)方法可以对数组进行排序。该方法返回一个元素已经进行了排序的 Array 对象。arrayObj 必选项。任意 Array 对象。sortFunction 可选项。是用来确定元素顺序的函数的名称。如果这个参数被省略,那么元素将按照 ASCII 字符顺序进行升序排列。
eg:

//sort()方法是基于ASCII值进行排序的。

var exarr = ["jiuzi","song","zhang","liu","li"];
exarr = exarr.sort();  
console.log(exarr.join()); // jiuzi,li,liu,song,zhang

var exarr = [91,62,5,6,3,55];  
exarr = exarr.sort();  
console.log(exarr.join()); //3,5,55,6,62,91

//对于数组元素是数值或对象的数组排序我们需要重写排序逻辑
var exarr = [91,62,5,6,3,55];  
exarr = exarr.sort(function(a,b){
return a>b;
});  
console.log(exarr.join()); //3,5,6,55,62,91

 

六、拆分数组 和 合并数组
1、拆分数组
返回一个数组的一段。
arrayObj.slice(start, [end])
参数 

       arrayObj  必选项。一个 Array 对象。

       start         必选项。arrayObj 中所指定的部分的开始元素是从零开始计算的下标。

       end          可选项。arrayObj 中所指定的部分的结束元素是从零开始计算的下标。
说明
       slice 方法返回一个 Array 对象,其中包含了 arrayObj 的指定部分。slice 方法一直复制到 end 所指定的元素,但是不包括该元素。如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。如果 end 出现在 start 之前,不复制任何元素到新数组中。

2、合并数组
        返回一个新数组,这个新数组是由两个或更多数组组合而成的。
array1.concat([item1[, item2[, . . . [, itemN]]]])
参数
        array1      必选项。其他所有数组要进行连接的 Array 对象。
        item1,. . ., itemN     可选项。要连接到 array1 末尾的其他项目。

说明
       concat 方法返回一个 Array 对象,其中包含了 array1 和提供的任意其他项目的连接。要加的项目(item1 … itemN)会按照从左到右的顺序添加到数组。如果某一项为数组,那么添加其内容到 array1 的末尾。如果该项目不是数组,就将其作为单个的数组元素添加到数组的末尾。

以下为从源数组复制元素到结果数组:
        对于从正被连接到新数组的数组中复制的对象参数,复制后仍然指向相同的对象。不论新数组和源数组中哪一个有改变,都将引起另一个的改变。对于连接到新数组的数值或字符串,只复制其值。一个数组中值有改变并不影响另一个数组中的值。

 

分享到:
评论

相关推荐

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

    JavaScript 和 jQuery 中的数组操作是编程中非常基础且重要的部分,尤其在处理数据集合时。在 JavaScript 中,数组是一种特殊的数据结构,可以存储各种类型的数据,包括整型、字符串、对象等。虽然 JavaScript 不...

    jquery ajax 向后台传递数组参数示例

    当需要传递数组作为参数时,可能会遇到一些挑战,特别是在数组中包含复杂对象的情况。本文将深入讲解如何在jQuery AJAX中向后台传递数组参数,并提供示例代码。 首先,理解问题的关键在于JavaScript数组在传递给...

    jquery选择器以及jquery数组

    jQuery 提供了一套强大的选择器,使得开发者能够更方便地选取页面中的元素,并对这些元素进行各种操作。 ### 一、基本选择器 1. **ID 选择器**:`$("#ID")` 使用 `#` 加上 ID 名称来选取拥有该 ID 的元素。例如...

    JQuery 操作Javascript对象和数组的工具函数小结

    JQuery操作非集合数组函数 $.trim(value) 这个函数很简单,从value中删除任何前导或尾随的空白字符。空白字符为任何匹配Javascript正则表达式\s的任何字符。包括空格、换页、换行、回车、tab、垂直指标符等。 $.each...

    jquery中push()的用法(数组添加元素)

    总体来说,push()方法在jQuery中是一个非常有用的工具,特别在处理动态内容和数据时,它可以有效地向数组中添加新元素。但是,也应当注意,由于push()方法直接修改了原数组,因此在某些情况下,可能需要在操作前复制...

    jQueryzTree JSTree 数组大全.rar

    在Web开发中,jQueryzTree和JSTree是两个广泛使用的JavaScript库,它们主要用于构建交互式的树形结构,如导航菜单、组织架构图等。这两个库都提供了丰富的功能和高度的自定义性,其中,对数组的操作是实现这些功能的...

    jQuery和JavaScript使用小案例

    在IT行业中,jQuery和JavaScript是两个非常重要的前端开发库和语言,它们在构建交互式网页和动态用户界面方面发挥着巨大作用。这个压缩包文件"jQueryAndJs"包含了一些使用这两种技术的小案例,旨在帮助学习者更好地...

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

    在开发中,我们常常需要对数组进行操作,其中就包括删除数组中的指定元素。在JavaScript中,原生提供的`splice()`方法是一种常用的方式,它通过指定的索引位置来删除元素。然而,在某些情况下,使用`splice()`方法...

    SSH1,JQuery的ajax返回json二维数组处理过程

    在JavaScript中,可以方便地遍历和操作这些数据。 在JQuery中,我们可以使用AJAX的`$.ajax()`或简化的`$.get()`、`$.post()`方法来发送请求并处理响应。在本例中,我们假设服务器端的SSH1应用处理了请求,并以JSON...

    javaScript数组操作笔迹

    下面将详细介绍标题与描述中提到的几个关键的JavaScript数组操作知识点。 ### join(delimiter) `join()` 方法用于将数组的所有元素连接成一个字符串,元素之间通过指定的分隔符 `delimiter` 进行分隔。例如,对于...

    collectjs是一个用于在JavaScript中处理数组和对象库

    总的来说,`collect.js` 是JavaScript开发中处理数组和对象的强大工具,无论是在前端还是后端,都能提供高效的数据处理能力。通过利用其丰富的API,开发者可以更轻松地处理复杂的数据操作,同时保持代码的简洁和可...

    jQuery 对象中的类数组操作

    在jQuery中,对象经常以类数组的形式存在,这意味着它们具有类似于JavaScript数组的一些操作特性,但并不完全等同于数组。jQuery提供了一系列方法来方便我们对这些类数组对象进行操作。以下是一些重要的jQuery类数组...

    js实现json数组分组合并操作示例

    在大型数据集上执行此类操作时,应考虑使用更高效的算法,例如使用`Array.prototype.find()`或`Set`对象来检查`id`是否已存在于目标数组中,以减少不必要的遍历。 综上,本示例展示了JavaScript处理JSON数组的分组...

    jquery实现从数组移除指定的值

    jQuery是一个快速、小巧且功能丰富的JavaScript库,它通过提供一种简洁的DOM操作方法来简化HTML文档遍历和操作、事件处理、动画和Ajax交互。在Web开发中,对数组进行操作是一个非常常见的需求,而jQuery提供的grep...

    jquery的ajax传json对象数组到struts2的action

    在Web开发中,jQuery的AJAX功能经常被用于与服务器进行异步数据交换,而Struts2作为一款流行的Java Web框架,提供了处理前端请求的能力。本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action...

    jquery 向后台传 数组对象

    在JavaScript中,数组是存储一系列值的数据结构,而对象则是一组键值对。为了将数组或包含数组的对象发送到后台,通常我们会将其转换为JSON格式,因为JSON是网络上交换数据的常见格式,易于读写且兼容性好。例如,...

    jQuery根据元素值删除数组元素的方法

    在JavaScript和jQuery中,处理数组是一项常见的任务,其中包括删除数组中的特定元素。本文将深入探讨如何使用jQuery根据元素值删除数组元素,同时也会涉及到相关的JavaScript基础概念。 首先,我们需要了解`jQuery`...

Global site tag (gtag.js) - Google Analytics