javascript Array对象

一,创建数组对象

JavaScript的数组支持了对任何数据类型的支持,并不会像java,C#那样指定了数组类型只能存储这种类型。

我们可以使用以下三种方法来创建JavaScript数组对象,

1,var arr=new Array();

2 , var arr=new Array([size]);//size为整数,定义一个固定长度的数组

3,var arr=new Array(element1[,element2[,…elementN]]);//elementN 为数组的元素

二,数组赋值

从上面创建数组对象的方法来看,只有使用第一种和第二种方法创建的数组对象需要再次赋值,第三种方法在创建的时候已经赋值。对于第一种和第二种方法创建的数组对象我们可以使用以下的方法进行赋值

var arr1=new Array();
arr1[0]=1;
arr1[1]=2;
arr1[2]=3;

var arr2=new Array(3);
arr2[0]=1;
arr2[1]=2;
arr2[2]=3;

但对于创建数组时指定了数组对象的长度,只能在长度范围内对数组进行赋值,超出范围则无法赋值,例如上面例子中 arr[3]=4,是不能赋值成功的。

当然除了上面的赋值方式外,我们还可以使用Array对象提供的方法对数组进行赋值,将在下面数组方法中介绍。

三,数组的访问

javascript数组的访问方式跟其他的语言的访问数组的方式相同,都是通过下标对数组进行访问,如下

var arr1=new Array();
arr1[0]=1;
arr1[1]=2;
arr1[2]=3;

document.write(arr1[0]);

四 ,数组元素的修改

JavaScript 数组元素的修改非常简单,只要像指定下标添加一个新值即可,如下

var arr1=new Array(); arr1[0]=1; arr1[1]=2; arr1[2]=3; arr1[0]=4; document.write(arr1[0]);

 

输出结果将会是4,而不是1,这样就可以修改成功

五,第三种创建数组对象特别说明

如果我想使用第三种方法对数组赋值一个整数,比如我想赋值一个 1在数组中,可以使用

var arr=new Array(1);

arr[0]=1;

或者使用

var arr=new Array();

arr[0]=1;

而不可以单独使用 var arr=new Array(1);因为这种方法只会创建数组长度为 1 的数组对象,而不能赋值,但是字符串是可以赋值成功的 var arr=new Array(“a”);

六,数组对象常用的方法

1,concat 方法

该方法返回一个新的数组,新的数组由该数组和其他元素组成,并不要求被合并的对象也是数组,可以是任意元素。

如下给的例子:

Codefunction arrayConcat()
        {
            var arr1 = new Array(1, 2, 3);
            var value = "javascript";
            var arr2 = new Array("C#", "Java");

            var arr3 = arr1.concat(value, arr2);
            document.write(arr3.length + "</br>");
            document.write(arr3.toString() + "</br>");
        }

输出的结果是

6
    1,2,3,javascript,C#,Java

2,join方法

该方法返回的是一个字符串而不是一个数组,数组中的元素由指定的分隔符分开.其使用方法为 arr.join(String),其中

String为可选项,如果不指定分隔符,那么数组元素将以逗号分隔。

如下例子

Code  function arrayJoin()
        {
            var arr1 = new Array(1, 2, 3);
            var value = "-";
            var arr2 = arr1.join();
            document.write(arr2.length + "</br>");
            document.write(arr2.toString() + "</br>");
        }

输出结果为:1-2-3

3,sort(fun) 方法

对数组元素进行排序,fun排序函数为可选项,不指定排序函数,将按照ASCII表进行升序排序,如果指定fun函数,那么该函数必须返回 –1或者0或者1,-1代表第一个参数比第二个参数小,0 参数相等,1代表第一个参数比第二个参数大

Code  function arraySort()
        {
            var arr = new Array(1, 3, 2, 0, 1, 4, 2);
            arr.sort();
            document.write(arr.toString() + "</br>");

            arr.sort(desc);
            document.writeln(arr);
            document.writeln("<br>");
            arr.sort(asc);
            document.writeln(arr);

        }

        function desc(x, y)
        {
            if (x > y)
                return -1;
            if (x < y)
                return 1;
            if (x == y)
                return 0;
        }
        function asc(x, y)
        {
            if (x > y)
                return 1;
            if (x < y)
                return -1;
            if (x == y)
                return 0;
        }

4,reverse方法

该方法对给定的数组进行反转。

上面的方法也是经常使用的,其他方法的使用大家可以参考JavaScript使用文档或者可以到w3school查看

七,二维数组

用上面所给创建数组对象的方法,大家会发现只能创建以为数组,而在开发中经常会用到二维数组,比如jqgrid就会用到二维数组来展示数据,所以这时候我们就要使用JavaScript创建二维数组。思路很简单,既然是数组,我们就创建一个数组,然后再将一个数组插入到第一个数组中的元素里面。这样就可以形成二维数组,下面给出代码

Codevar arr = new Array();
		for (var i = 1; i <= 10; i++) {
		    arr[i] = new Array();
		    for (var j = 0; j <= 10; j++) {
		        aa[i][j] = i + j;
		    }
		}

八,数组的属性

1,length 经常使用,得到数组的长度

2,propertype 返回对象原型的引用,使用这个属性我们可以对Array对象设置我们自己写的方法,比如我想让Array对象有我自己的列最大值的方法,可以使用

Codefunction array_max( )
{
   var i, max = this[0];

for (i = 1; i < this.length; i++)
    { 
        if (max < this[i])   max = this[i];
    }  
      return max;
   }
     Array.prototype.max = array_max;
  var arr = new Array(1, 2, 3, 4, 5, 6);
  var value = x.max( );

对数组的就写到这里,刚开始写博客,里面如果有不妥的地方请大家指定出来或者你有更好的见解,大家可以交流,谢谢.

时间: 2025-01-02 03:07:34

javascript Array对象的相关文章

JavaScript - Array对象的使用 及 数组排序 sort

<html> <head> <head> <body> <script language="javascript"> // Array对象 // 第一种构造方法 var arr = new Array(); alert(arr.length); arr[0] = 520 ; arr[1] = "wjp" ; alert(arr.length); // 第二种构造方法 // Array(4) ; // 第三种

JavaScript Array对象介绍

Array 数组 1. 介绍 数组是值的有序集合.每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引.JavaScript数组是无类型:数组元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型. --<JavaScript权威指南(第六版)> 2. 定义 var names = new Array("张三", "李四", "王五"); //或者 var names = ["张三",

JavaScript Array 对象参考手册

JavaScript Array 对象 Array 对象 Array 对象用于在变量中存储多个值: var cars = ["Saab", "Volvo", "BMW"]; 第一个数组元素的索引值为 0,第二个索引值为 1,以此类推. 更多有关JavaScript Array参考手册请参考 JavaScript Array 对象手册. Array 对象属性 方法 描述 concat() 连接两个或更多的数组,并返回结果. every() 检测数值

JavaScript Number 对象 Javascript Array对象

JavaScript Number 对象 Number 对象属性 属性 描述 constructor 返回对创建此对象的 Number 函数的引用. MAX_VALUE 可表示的最大的数. MIN_VALUE 可表示的最小的数. NaN 非数字值. NEGATIVE_INFINITY 负无穷大,溢出时返回该值. POSITIVE_INFINITY 正无穷大,溢出时返回该值. prototype 使您有能力向对象添加属性和方法. Number 对象方法 方法 描述 toString 把数字转换为字

javascript Array 对象

Array 对象用于在单个的变量中存储多个值. 语法: <span style="font-size:14px;">new Array(); new Array(size); new Array(element0, element1, ..., elementn);</span> 参数 size 是期望的数组元素个数.返回的数组,length 字段将被设为 size 的值. 参数 element ..., elementn 是参数列表.当使用这些参数来调用构造函

JavaScript Array对象 知识点总结

1 isArray方法 该方法是Array对象的静态方法,用来判断一个值是否为数组,它可以弥补typeof运算符的不足. 用法是Array.isArray(array实例) 通用的判断对象数据类型的方法是Object.prototype.toString.call(obj) === "[object type]", 比如 Object.prototype.toString.call([1,2,3]) === "[object Array]" 2 Arry实例的方法

javascript Array对象concat()方法

concat() 方法用于连接两个或多个数组. 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 语法: arrayObject.concat(arrayX,arrayX,......,arrayX) arrayX 必需.该参数可以是具体的值,也可以是数组对象.可以是任意多个. 返回值: 返回一个新的数组.该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的.如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组. 例子 1:

javascript Array对象的constructor属性

定义和用法 constructor 属性返回对创建此对象的数组函数的引用. 语法 object.constructor 例子: <script type="text/javascript"> var test=new Array(); if (test.constructor==Array) { document.write("This is an Array"); } if (test.constructor==Boolean) { document.

JavaScript Array对象基本方法

昨天出去前端面试又失败,期间问了个有关于数组对象的问题,下面就这类问题总结下JavaScript常用的数组操作方法. 一.何为数组(Array)对象 数组对象是使用单独的变量名来存储一系列的值. 二.创建数组的三种方式 2.1使用关键词 new 来创建数组对象. let myStar =new Array(); myStar[0]="刘德华"; myStar[1]="成龙"; myStar[2]="林青霞"; myStar[3]="王菲