0
点赞
收藏
分享

微信扫一扫

JavaScript 数组详解


一维数组:
js中的数组是用于表示一组数据的集合,它由一个方括号[]包围,数组中的每个元素逗号分隔,数组元素可以是任意类型的数据。
①创建数组
例子:

var a=["shunping".123,"1.1",4.5,true]

数组的细节:
基本用法:
var 数组名=[元素值,元数值,...]
元素的值可以是任意类型
var arr=[4,56,"hello world",true];

数组可存放任意类型的数据
数组大小不必事先指定,可以动态增长
数组名可以理解为指向数组首地址的引用
arr=[45,90,0];
document.writeln(arr); //则输出 45 90 0
④数组元素从0开始编号的

普通数据类型在函数调用的时候传值,相当于拷贝了一份,而不是传的地址

js数组是可以动态的增长的,这个和java的数组不一样,有点类似于java中ArrayList

数组使用代码实例:

<html>
<head>
<script language="javascript">
var myarr=[456,90,900];
document.writeln("函数调用前<br/>");
for(var i=0;i<myarr.length;i++){
document.writeln(myarr[i]);
}
document.writeln("<br/>=========<br/>");

function abc(arr){
arr[0]=35;
}
//调用函数
abc(myarr);
document.writeln("函数调用后<br/>");
for(var i=0;i<myarr.length;i++){
document.writeln(myarr[i]);
}
</script>
</head>
<body></body>
</html>

js数组的几个重要应用:

(1)使用数组名.length可以得到数组大小


(2)拆分字符串 字符串.split(拆分数组)可以得到一个数组


(3)其他...


字符串拆分数组


var str="hello world abc 顺平";


var arr=str.split(" ");//以空格为间隔


var arr1=str.split("");//一个字符一个字符的打散了


var arr2=str.aplit(" ",2);//取其中的前两个,取hello world

遍历一维数组:
for(var i=0;i<arr.length;i++){
document.write(arr[i]+" ");
}

二维数组:
多维数组我们只介绍二维数组,一维数组的元素还可以是一个数组,就构成了二维数组。
①实例
var arr=[["shunping",123,4.5],["a","b","c"]]

遍历二维数组:

<html>
<head>
<script language="javascript">
var arr=[["shunping",123,4.5],["a","b","c"]];

//遍历
for(var i=0;i<arr.length;i++){
//输出一行(二维数组一个元素[数组])
for(var j=0;j<arr[i].length;j++){
document.writeln(arr[i][j]+" ");
}
document.writeln("<br/>");
}
//如果需要直接访问"c"
window.alert(arr[1][2]);
</script>
</head>
<body></body>
</html>


二维数组矩阵转置:

<html>
<head>
<meta charset="UTF-8">
<script language="javascript">
var arr=[[2,4,6,8],[8,9,0,-1],[9,6,2,1]];
//定义一个新的数组
var arr2=[];

//初始化,定下有多少行,先不考虑特殊情况(都是规规矩矩的矩阵,每一行的数据个数都是一致的)
for(var i=0;i<arr[0].length;i++){
arr2[i]=[];
}
//动态的添加数据
//遍历旧数组
document.writeln("原数组为:"+"<br/>");
for(var i=0;i<arr.length;i++){
for(var j=0;j<arr[i].length;j++){
document.writeln(arr[i][j]+" ");
//行列互换,arr2已经开辟空间了
arr2[j][i]=arr[i][j];
}
document.writeln("<br/>");
}

//成功!遍历 arr2数组就是一个转置数组
document.writeln("转置后数组为:"+"<br/>");
for(var i=0;i<arr2.length;i++){
for(var j=0;j<arr2[i].length;j++){
document.writeln(arr2[i][j]+" ");
}
document.writeln("<br/>");
}
</script>
</head>
<body></body>
</html>


举报

相关推荐

0 条评论