`
casec12
  • 浏览: 46709 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript基础之数组使用技巧(转)

阅读更多

 <wbr></wbr> <wbr></wbr> <wbr></wbr>JavaScript 数组使用技巧

 <wbr></wbr> <wbr></wbr>
 <wbr></wbr> <wbr></wbr> <wbr></wbr>
//创建数组, 长度由后期赋值决定
 <wbr></wbr>  <wbr></wbr> var arry1 = new Array;
 <wbr></wbr>  <wbr></wbr> for (i = 0; i < 5; i++) {
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr> <wbr></wbr>arry1 = 2 * i + 1;
 <wbr></wbr>  <wbr></wbr> }

 <wbr></wbr>  <wbr></wbr> // length属性, 返回数组的长度
 <wbr></wbr>  <wbr></wbr> alert("arry1.length=" + arry1.length);
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // toString()方法, 返回数组的字符串表示
 <wbr></wbr>  <wbr></wbr> alert("arry1=" + arry1.toString());
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 构建数组并初始化, 有点像Java
 <wbr></wbr>  <wbr></wbr> arry2 = [2, 4, 6, 8];
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // concat方法, 用于连接两个数组
 <wbr></wbr>  <wbr></wbr> var arry3 = arry1.concat(arry2);
 <wbr></wbr>  <wbr></wbr> alert(arry3); // 1, 3, 5, 7, 9, 2, 4, 6, 8
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // concat的另外一种用法, 可以有多个参数
 <wbr></wbr>  <wbr></wbr> var arry4 = arry2.concat(1, 3, 5, 7, 9);
 <wbr></wbr>  <wbr></wbr> alert(arry4); // 2, 4, 6, 8, <wbr></wbr> <wbr></wbr>1, 3, <wbr></wbr> <wbr></wbr>5, <wbr></wbr> <wbr></wbr>7, <wbr></wbr> <wbr></wbr>9
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // join方法, 用于将数组中的各个元素连接成字符串
 <wbr></wbr>  <wbr></wbr> var arry5 = ["one", "two", "three"];
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 默认用","连接
 <wbr></wbr>  <wbr></wbr> var strArry = arry5.join();
 <wbr></wbr>  <wbr></wbr> alert(strArry); // "one,two,three"
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 也可以指定连接的字符
 <wbr></wbr>  <wbr></wbr> strArry = arry5.join("|");
 <wbr></wbr>  <wbr></wbr> alert(strArry); // "one|two|three"
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // sort 方法用于将数组排序
 <wbr></wbr>  <wbr></wbr> var arry6 = [2, 3, 1, 6, 5, 3, 1, 4, 7];
 <wbr></wbr>  <wbr></wbr> arry6.sort();
 <wbr></wbr>  <wbr></wbr> alert(arry6.toString()); // 1, 1, 2, 3, 3, 4, 5, 6, 7
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 对于字符串数组, sort方法使用字典的顺序排序
 <wbr></wbr>  <wbr></wbr> var arry7 = ['BB', 'AAA', 'C'];
 <wbr></wbr>  <wbr></wbr> arry7.sort();
 <wbr></wbr>  <wbr></wbr> alert(arry7); // AAA, BB, C
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 也可以通过回调函数的方式自定义排序的大小逻辑
 <wbr></wbr>  <wbr></wbr> // 例如下面的例子将按照字符串的长度对arry7排序
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> arry7.sort(function(a1, a2) {
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> return a1.length - a2.length;
 <wbr></wbr>  <wbr></wbr> });
 <wbr></wbr>  <wbr></wbr> alert(arry7); // C, BB, AAA
 <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr> <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 调用reverse方法, 可以将数组反转
 <wbr></wbr>  <wbr></wbr> arry8 = [1,2,3,4,5];
 <wbr></wbr>  <wbr></wbr> arry8.reverse();
 <wbr></wbr>  <wbr></wbr> alert(arry8.toString()); // 5, 4, 3, 2, 1
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // slice方法, 用于截取数组的一部分并以数组的形式返回
 <wbr></wbr>  <wbr></wbr> // 两个参数分别为截取部分的上界和下界(前包括, 后不包括, 和Java一样)
 <wbr></wbr>  <wbr></wbr> var arry9 = ['一','二','三','四','五'];
 <wbr></wbr>  <wbr></wbr> var arry10 = arry9.slice(1,3);
 <wbr></wbr>  <wbr></wbr> alert(arry10); // 二, 三
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // splice方法, 用于删除原数组的一部分内容, 并用指定的元素替换
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> var arry11 = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
 <wbr></wbr>  <wbr></wbr> arry11.splice(1, 5, '&','%','#');
 <wbr></wbr>  <wbr></wbr> alert(arry11); // A, &, %, #, G
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // pop和push方法, 可以利用数组实现栈(先进后出)的操作
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> var arry12 = new Array;
 <wbr></wbr>  <wbr></wbr> // 进栈一个元素
 <wbr></wbr>  <wbr></wbr> arry12.push('one');
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // 进栈多个元素
 <wbr></wbr>  <wbr></wbr> var size = arry12.push('two','three','four');
 <wbr></wbr>  <wbr></wbr> alert(size); // 4
 <wbr></wbr>  <wbr></wbr> size = arry12.push('five','six','seven','eight','night','ten');
 <wbr></wbr>  <wbr></wbr> alert(size); // 10
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> for(i=0; i<size; i++) {
 <wbr></wbr>  <wbr></wbr> <wbr></wbr> <wbr></wbr>alert(arry12.pop());
 <wbr></wbr>  <wbr></wbr> }
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> //Prototype的clone方法, 用于实现数组的复制(克隆), 返回值为复制后的新数组
 <wbr></wbr>  <wbr></wbr> var str = "how long no see you";
 <wbr></wbr>  <wbr></wbr> // string的split方法有点像Java语言
 <wbr></wbr>  <wbr></wbr> var arry13 = str.split(' ');
 <wbr></wbr>  <wbr></wbr> alert(arry13); // how, long, no, see, you
 <wbr></wbr>  <wbr></wbr> var arry14 = arry13.clone();
 <wbr></wbr>  <wbr></wbr> alert(arry14); // how, long, no, see, you
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // Prototype的compact方法, 用于删除原数组中值为null和undefined(未定义)的元素
 <wbr></wbr>  <wbr></wbr> // 返回值为删除后的新数组, 原数组不变
 <wbr></wbr>  <wbr></wbr> var arry15 = ["spring",,"summer",,null,"autumn",,,"winter",null];
 <wbr></wbr>  <wbr></wbr> alert(arry15.length); //10:
 <wbr></wbr>  <wbr></wbr> var arry16 = arry15.compact();
 <wbr></wbr>  <wbr></wbr> alert(arry16.length+": "+arry16.toString()); //4: spring, summer, autumn, winter
 <wbr></wbr>  <wbr></wbr>
 <wbr></wbr>  <wbr></wbr> // Prototype的without方法, 用于删除数组中的指定元素
 <wbr></wbr>  <wbr></wbr> // without方法支持多参数, 返回值为删除后的新数组, 原数组不变
 <wbr></wbr>  <wbr></wbr> var arry17 = ['java', 'html', 'css', 'c++','js','php','c#','js'];
 <wbr></wbr>  <wbr></wbr> // 删除数组arry18中值为'html', 'css' 和'js'的元素
 <wbr></wbr>  <wbr></wbr> var arry18 = arry17.without('html','css','js');
 <wbr></wbr>  <wbr></wbr> alert(arry18.toString()); // java, c++, php, c#

分享到:
评论

相关推荐

    JavaScript对象与数组参考大全

    在这份"JavaScript对象与数组参考大全"中,我们将深入探讨JavaScript的核心概念——对象和数组,它们是JavaScript编程的基础,也是理解和编写复杂应用的关键。 一、JavaScript对象 1. 对象定义:JavaScript对象是一...

    JavaScript获取多个数组的交集

    同时,理解这些基本操作也有助于我们更好地掌握JavaScript数组处理的技巧。在阅读类似《JavaScript高级程序设计》这样的书籍,或者在iteye这样的技术社区中,你可以找到更多关于数组操作和算法优化的知识,不断提升...

    JavaScript遍历查找数组中最大值与最小值的方法示例

    下面将详细讲解如何利用JavaScript实现这个功能,并提供相关的实例和技巧。 首先,我们来看如何查找数组中的最小值。这里提供了一个名为`mathMin`的函数,它接受一个数组作为参数。函数初始化`min`变量为数组的第一...

    JavaScript学习笔记之数组的增、删、改、查_.docx

    JavaScript中的数组操作是编程中非常基础且重要的部分,尤其在处理数据集合时。数组的增、删、改、查操作是编程中常见的需求,这里我们将深入探讨这些操作方法。 **一、增加数组项** 1. **索引赋值**: 你可以...

    js一维数组、多维数组和对象的混合使用方法.docx

    JavaScript中的数组和对象是两种非常基础且常用的数据结构。它们在编程中扮演着重要的角色,尤其是在处理和组织数据时。本文将深入探讨一维数组、多维数组以及对象的混合使用方法。 首先,一维数组是最基本的数组...

    Web开发领域的JavaScript基础教程及其实用技巧

    内容概要:文档详尽介绍了 JavaScript 的基础知识与应用技巧,包括环境配置、简单程序演示、主要的数据类型(如字符串、数值、布尔、数组和对象)、常用的控制结构(条件语句、循环)、以及函数和面向对象编程的基本...

    javascript数组去重方法分析

    - **《JavaScript数组操作技巧总结》**:涵盖各种数组操作的实用技巧。 - **《JavaScript遍历算法与技巧总结》**:讲解不同类型的遍历方法及其应用。 - **《JavaScript数学运算用法总结》**:包括基础运算符和高级...

    javaScript基础版与源码大全

    在这个"JavaScript基础教程"中,我们将深入探讨JavaScript的核心概念和常见用法。 1. **基础语法** JavaScript的基础包括变量声明(var、let、const)、数据类型(如字符串、数字、布尔值、null、undefined、对象...

    【JavaScript源代码】JavaScript数组去重问题的深入研究.docx

    数组去重是在处理大量数据时经常遇到的问题之一。为了提高程序效率以及代码的可读性和维护性,掌握多种不同的数组去重方法至关重要。 #### 最初的方法:双层循环 最初的想法通常是从最直观的方式开始——使用双层...

    Javascript实现Array和String互转换的方法

    在JavaScript中,Array(数组)和String(字符串)的互转换是经常需要掌握的基础知识点,尤其在处理数据时非常实用。本文将详细介绍如何使用JavaScript内置方法来实现数组与字符串之间的转换,其中涉及到了两个重要...

    JavaScript 另类遍历数组实现代码

    在JavaScript编程中,数组是一个非常基础且常用的数据结构,用于存储有序的数据集合。通常,我们遍历数组的常规方法包括for循环、for...in循环、for...of循环、forEach()方法等。但是在一些特定的场景下,可能需要...

    JavaScript基础与实例教程

    本教程“JavaScript基础与实例教程”由中国电力出版社出版,旨在为初学者和有经验的开发者提供一个深入理解JavaScript核心概念和实践技巧的平台。 首先,JavaScript的核心概念包括变量、数据类型和操作符。变量是...

    JavaScript实现将数组数据添加到Select下拉框的方法

    总结来说,JavaScript 实现数组数据添加到 Select 下拉框的方法,涉及到数组操作的基础知识,包括如何声明数组、获取数组长度、遍历数组以及创建 Option 对象。同时,还需要掌握通过 JavaScript 动态修改 HTML 页面...

    JavaScript基础教程(第8版)源代码

    JavaScript,作为全球最广泛使用的编程语言之一,是创建交互式网页和动态应用的关键工具。《JavaScript基础教程(第8版)》的源代码提供了一个深入理解JavaScript语法和实践的宝贵资源。这个压缩包包含了该书所有...

    javascript实现查找数组中最大值方法汇总

    在JavaScript编程中,查找数组中的最大值是一个基础且常见的操作,有着不同的实现方式。下面将会详细介绍几种常用的JavaScript方法来实现查找数组中的最大值。 ### 方法一:使用递归函数 递归是一种解决问题的方法...

    04-JavaScript基础.pptx

    综上所述,这些JavaScript基础知识涵盖了函数的返回值、可变参数、数组的创建、属性和方法,以及数组元素的添加、删除、排序和转换。熟练掌握这些概念和技巧,将有助于构建动态、交互的网页应用。在实际编程中,不断...

    javascript基础实践教程

    10. **调试技巧**:学习如何使用浏览器的开发者工具进行代码调试是每个JavaScript开发者必备的技能。通过断点、步进执行和查看变量状态,可以有效地定位和解决问题。 本教程将通过一系列实例和练习,帮助你深入理解...

    javascript使用手册,特效,技巧

    `JavaScript+语言参考》中文版.chm`和`《JavaScript 语言参考》中文版.chm`这两份文档提供了详细的语法说明和实例,涵盖了变量、数据类型、运算符、流程控制、函数、对象、数组等核心概念。通过这些文档,开发者可以...

    《JavaScript 语言参考》中文版与使用技巧

    JavaScript,作为全球最广泛使用的编程语言之一,是创建交互式网页和网络应用的关键工具。《JavaScript 语言参考》中文版是一本深入理解JS语法和功能的重要资源,它为开发者提供了全面且详细的API文档,帮助他们查找...

    JavaScript征途

    JavaScript对象,数组,字符串,使用正则表达式操纵字符串,客户端,控制文档结构的模型,JavaScript事件驱动模型,CSS,Cookie,XML和JSON,Ajax,深入JavaScript面向对象编程,深入JavaScript函数式编程,深入...

Global site tag (gtag.js) - Google Analytics