JavaScript 基础回顾——数组

JavaScript是无类型语言,数组元素可以具有任意的数据类型,同一个数组的不同元素可以具有不同类型。数组的元素设置可以包含其他数组,便于模拟创建多维数组。

 

1.创建数组

在JavaScript中,创建数组可以使用两种方式

(1)使用 "[]" 创建。

<script type="text/javascript">

var arr=[];  //创建空数组

var arr=['北京',0,true,'上海','代码里','www.daimali.com']; //创建带初始值的数组

</script>

(2)使用 new 关键字创建数组对象 Array()。

在JavaScript 1.1 版本之后,一般使用 new 关键字

<script type="text/javascript">

var arr=new Array();  //创建空数组

var arr=new Array('北京',0,true,'上海','代码里','www.daimali.com'); //创建带初始值的数组

</script>

 

2.数组元素

JavaScript中数组的元素可以是任何类型的数据。

(1)数组长度。

JavaScript数组的长度是可变的,可以通过Length属性获得。

<script type="text/javascript">

var a=new Array();  //创建空数组

var b=new Array('北京',0,true,'上海','代码里','www.daimali.com'); //创建带初始值的数组

a.Length  //长度为0

b.Length //长度为6

</script>

 

(2)访问数组元素

JavaScript中访问数组的元素使用 [] 运算符,可以通过下标和关键字访问。遍历数组的元素可以使用循环语法或for..in语句。

<script type="text/javascript">

var arr=new Array('北京',0,true,'上海','代码里','www.daimali.com'); //创建带初始值的数组

writeln('第一个元素值为:'+arr[0]);//输出 北京

</script>

for...in

for(i in arr)

{

document.writeln('元素值为:'+arr[i]); //遍历输出数组值

}

 

3.多维数组

JavaScript中本来没有多维数组,但数组元素可以是任何类型的数据甚至另一个数组,可以非常方便的模拟多维数组。

(1)使用 new Array()创建多维数组

<script type="text/javascript">

var array1;  var array2;

function createArr()

{

var one = new Array(3);

for(var i=0; i<one.length; i++)

{

one[i] = new Array(4);

for(var j=0;j< one[i].length; j++)

{

one[i][j] =(i+1) * (j+1);//为数组元素赋值

}

}

return one;// 返回创建的多维数组

}

</script>

 

(2)使用 [] 创建多维数组

array1=[ [1,2,3] , [5,8,9] , [7,'北京',8] ] //就是这么简单...

获取值得方式也简单: array1[0][1] => 1,

array1[0][2] => 2,

array1[2][1] => 北京

 

4.数组排序

在JavaScript中,数组可以直接使用Array对象的sort()方法,该方法允许传递一个排序函数作为参数。不过不传递参数,则按照 ASCII 字符顺序升序排序;否则,传递给该方法的函数必须返回负数,0 或正数,返回值表示相邻两个元素的比较结果,sort()方法按照比较结果排序。

<script>

var a= Array(10,215,324,3,1254,300);

a.sort(); //不传递参数  排序结果是: 10,215,324,3,1254,300

function sortfun(one, two)

{

return one - two;

}

a.sort(sortfun); //传递函数作为参数  排序结果为:3,10,215,300,324,1254

</script>

 

 来源:代码里

 链接:http://www.daimali.com/index.php/2016/04/28/335/

 

 
posted @ 2016-04-30 11:26  李伟-CodeL  阅读(256)  评论(0编辑  收藏  举报