首页 > 代码库 > javascript的Array对象解析

javascript的Array对象解析

1  一维数组

  定义:一维数组是一组具有相同类型的相关数据,并通过带索引编号的单个变量名标志每个数据项。

2  JavaScript中创建数组

   在JavaScript中,使用var关键字后跟数组名来创建数组。然而在这个表达式的右边不是放置一个特定值,而是使用JavaScript关键字new Array()。可以在这个圆括号内指定这个数组元素的个数,但这不是必须的。如:var array = new Array(200);引用特定元素的方法是数组名后跟用括号括起来的一个索引编号(编号从0开始)。如:Document.write(array[2]);

3 关于数组的初始化

 两中赋值方式:1)先声明后逐个赋值。如 var stu = new Array();stu[0]="**";stu[1]="##";.....;

        2) 声明赋值同时进行。如 var stu = new Array("**","$$","&&","....");

4 Array对象

 因为数组是对象,所以他们有相关的方法和属性;且数组名最为实参传递时,是引用传递(即传递的是地址)。

关于数组名的说明

  通过数组名引用一个数组时,可以带或不带括号。

6 数组的length属性

 检查数组的长度大小。(数组名.length)

7 Array对象的一些方法

Array对象的方法

方法

描述

concat()

链接两个或更多数组并且返回连接后数组的副本

join()

将一个数组中的所有元素连接成一个字符串

push()

将新元素添加到数组的末尾并且返回新的长度

reverse()

反转数组中元素的次序

shift()

去除数组的第一个元素并且返回那个元素

sort()

排序数组中的元素

splice()

               为数组添加/去除元素

toString()

将数组转换成一个字符串并返回这个结果

Unshift()

把新元素添加到数组的开始位置并且返回新的长度

 

8 数组方法实例

  

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript">
function arrayMethod(){
var array1 = new Array(3,"huang","$");
var array2 = new Array();
array2[0] = 5;
array2[1] = 49;
array2[2] = 8;
/*链接两个或更多数组并且返回连接数组的副本:3,huang,$,5,49,8*/
var con = array1.concat(array2);
document.getElementById("concat").innerHTML = con;
/*将一个数组中的所有元素连接成一个字符串:3,huang,$*/
var joi = array1.join();
document.getElementById("join").innerHTML = joi;
/*将新元素添加到数组的末尾并且返回新的长度:4*/
var pus = array1.push("jinjin");
document.getElementById("push").innerHTML = pus;
/*反转数组中元素的次序:jinjin,$,huang,3*/
var rever = array1.reverse();
document.getElementById("reverse").innerHTML = rever;
/*去除数组的第一个元素并且返回那个元素:jinjin*/
var shif = array1.shift();
document.getElementById("shift").innerHTML = shif;

/*sort():
1、默认情况下是进行升序排列.从左往右一位一位比较,直至比较出大小(若其中位数不足的补零):如:5与51,因为第一位5等于5,比较第二位,因为第一个数字只有一位,所以补零0小于第二个数字的第二位1,所以5小于51;如5与49比较,5大于4,所以此函数认定5大于49。所以利用此函数比较时,应该使相应的比较的数的位数相同(如上例5与49比较,应该写为:05与49比较)。
2、sort() 方法可以接受一个 方法为参数 ,
3、示例结果:排序数组中的元素:49,5,8
*/
var sor = array2.sort();
document.getElementById("sort").innerHTML = sor;
/*
splice(index,howmany,item1,.....,itemX)
Index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
Howmany:必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX:可选。向数组添加的新项目。
注意:splice不返回(即没有返回值)
所以示例结果为:为数组添加/去除元素:
*/
var spl = array2.splice(3,0,"4")//
document.getElementById("splice").innerHTML = spl;
/*将数组转换成一个字符串并返回这个结果:49,5,8,4*/
var tos = array2.toString();
document.getElementById("tostring").innerHTML = tos;
/*把新元素添加到数组的开始位置并且返回新的长度:5*/
var unshif = array2.unshift("%%")
document.getElementById("unshift").innerHTML = unshif;
}

</script>
</head>

<body>
<section>
<p>链接两个或更多数组并且返回连接数组的副本:<span id="concat"></span></p>
<p>将一个数组中的所有元素连接成一个字符串:<span id="join"></span></p>
<p>将新元素添加到数组的末尾并且返回新的长度:<span id="push"></span></p>
<p>反转数组中元素的次序:<span id="reverse"></span></p>
<p>去除数组的第一个元素并且返回那个元素:<span id="shift"></span></p>
<p>排序数组中的元素:<span id="sort"></span></p>
<p>为数组添加/去除元素:<span id="splice"></span></p>
<p>将数组转换成一个字符串并返回这个结果:<span id="tostring"></span></p>
<p>把新元素添加到数组的开始位置并且返回新的长度:<span id="unshift"></span></p>
<input type="button" value="http://www.mamicode.com/array_method" onClick="arrayMethod()">
</section>
</body>
</html>

 

注意:

1、splice()方法:(不返回

2sort() 方法是按字符数据的ASCII码进行比较排序

备注:本人是新人,如有不当之处,请谅解之处。谢谢!

 

javascript的Array对象解析