弄懂JavaScript数组基础

数组介绍

一、数组概念

数组(Array)就是一组数据的集合,数组是JavaScript中用来存储和操作有序数据集的数据结构。

二、数据元素

数组是数据元素的集合,每个数据元素都有一个下标,通过下标可以方便地引用数组元素。

定义数组

一、定义空数组

使用不带参数的构造函数可以定义一个空数组,在定义空数组后再向数组中添加数组元素。
如:

var arr=new Array();

二、指定数组长度

在定义数组的同时可以指定数组元素的个数,此时并没有为数组元素赋值,所有的数组元素的值是undefined。

            var arr=new Array(2);
			document.write(arr[0]);
			document.write(arr[1]);

在这里插入图片描述

三、指定数组元素

在定义数组的同时可以直接给出数组元素的值,此时数组的长度就是在括号中给出的数组元素的个数。

var arr=new Array(2,7,"d");
			document.write(arr[0]);
			document.write("<br>");
			document.write(arr.length);

在这里插入图片描述

四、直接定义数组

直接将数组元素放在一个中括号中,元素与元素之间用逗号分隔。

<script>
			var arr=[2,7];
			document.write(arr[0]);
			document.write("<br>");
			document.write(arr.length);
		</script>

在这里插入图片描述

操作数组元素

一、数组元素的输入输出

数组元素的输入
1)在定义Array对象时直接输入数组元素
2)利用数组元素下标向Array对象中输入数组元素
3)利用for语句向Array对象中输入数组元素

<script>
			var arr=new Array("a","r","r","a","y");
			document.write(arr.length);
			document.write("<br>");
			document.write(arr[5]);//数组的长度只有5,输出这个的时候,没有定义,输出undefined
			document.write("<br>");
			
			arr[5]="add";
			document.write(arr[5]);
			document.write("<br>");
			document.write(arr.length);
			document.write("<br>");
			
			for(var i=0;i<7;i++){
				arr[i]=i;
				document.write(arr[i]+"   ");
			}	
		</script>

在这里插入图片描述
数组元素的输出
用下标获取指定元素值
用for语句获取数组中的元素值
用数组对象名输出所有的元素值

实例01:
创建一个存储3个学生姓名(张三、李四、王五)的数组,然后输出这3个数组元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">	
			var arr=new Array("张三","李四","王五");
		for(var i=0;i<arr.length;i++){
					document.write("第"+(i+1)+"个学生的姓名是:"+arr[i]+"<br>");
		}
	
		</script>
	</body>
</html>

在这里插入图片描述

二、数组元素的添加

添加数组元素的方法,只要对新的数组元素进行赋值就行了。

	<body>
		<script type="text/javascript">	
			var arr=new Array("张三","李四","王五");
		arr[3]="赵六";
	document.write(arr)
		</script>
	</body>

在这里插入图片描述

三、数组元素的删除

使用delete运算符可以删除数组元素的值。
应用delete运算符删除数组元素之前和删除数组元素之后,元素个数并没有改变

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">	
			var arr=new Array("张三","李四","王五");
		delete arr[1];
	document.write(arr)
		</script>
	</body>
</html>

在这里插入图片描述

数组的属性

length属性

该属性用于返回数组的长度
在这里插入图片描述

prototype属性

该属性可以为数组对象添加自定义的属性或方法。
例题03:
利用自定义方法显示数组的全部数据

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			Array.prototype.show = function() {
				document.write(arr);
			}
			var arr = new Array(1, 2, 3, 4, 5, 6, 7, 8);
			arr.show();
		</script>
	</body>
</html

在这里插入图片描述

数组的方法

在这里插入图片描述

一、数组的添加和删除

1)数组的添加

concat()方法:该方法用于将其它数组连接到当前数组的末尾。
push()方法:像数组的末尾添加一个或多个元素,并返回添加后的数组长度。
unshift()方法:向数组的开头添加一个或多个元素。

2)数组的删除

pop()方法:用于把数组中的最后一个元素从数组中删除,并返回删除元素的值。
shift()方法:用于把数组中的第一个元素从数组中删除,并返回删除元素的值。
splice()方法:用于删除数组中指定位置的元素,还可以向数组中的指定位置添加新元素。
在这里插入图片描述
在这里插入图片描述

二、设置数组的排列顺序

将数组中的元素按照指定的顺序进行排列可以通过reverse()和sort()方法实现。

reverse()方法:用于颠倒数组中的元素顺序(反序)

实例01:
将1,2,3,4反序

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var arr = new Array(1, 2, 3, 4);
			arr.reverse();
			document.write(arr);
		</script>
	</body>
</html>

在这里插入图片描述

sort()方法:用于对数组元素进行排序。

在这里插入图片描述
实例01:
将数组中的元素按照从小到大进行输出

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			function sortNumber(a,b)
			{
			return a - b
			}
			var arr = new Array(2, 11,4, 13);
			document.write("原数组:"+arr+"<br>");
			document.write("排序后的数组:"+arr.sort(sortNumber));
		</script>
	</body>

在这里插入图片描述

三、获取某段数组元素

获取数组中的某段数组元素主要用slice()方法实现,slice()方法可从已有的数组中返回选定的元素。

实例01:
选取数组中某段数组元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			
			var arr = new Array("a","b","c","d","e","f");
			document.write("原数组:"+arr+"<br>");
			document.write("获取数组中第3个元素后的所有元素:"+arr.slice(2)+"<br>");
			document.write("获取数组中第2个和第5个元素:"+arr.slice(1,5)+"<br>");
			document.write("获取数组中倒数第2个元素后的所有元素:"+arr.slice(arr.length-2));
		</script>
	</body>
</html>

在这里插入图片描述

四、数组转换成字符串

将数组转换成字符串主要通过toString(),toLocaleString()和join()方法实现。

1)toString()方法

该方法可把数组转换成字符串,并返回结果。

2)toLocaleString()方法

该方法将数组转换成本地字符串,并返回结果。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">	
			var arr = new Array("a","b","c","d","e","f");
			document.write(arr.toLocaleString());
		</script>
	</body>
</html>

在这里插入图片描述

3)join()方法

该方法将数组中的所有元素放入一个字符串中。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">	
			var arr = new Array("a","b","c","d","e","f");
			document.write(arr.join("-"));
		</script>
	</body>
</html>

在这里插入图片描述

二维数组

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			var myarr=new Array();//先声明一维数组
			for(var i=0;i<2;i++){
				myarr[i]=new Array();//再声明二维数组
				for(var j=0;j<3;j++){
					myarr[i][j]=i+j;
						document.write(myarr[i][j]);
				}
				document.write('<br>');
			}			
		</script>
	</body>
</html>

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44830627/article/details/105300803