JavaScript--再谈js的Array对象


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JS唯一的容器--Array</title>
<script type="text/javascript" src="tools.js"></script>
</head>
<body>
	<script type="text/javascript">
		var arr1 = [1,2,3,4,5,6];
		var arr2 = ["aa","bb","cc","dd"];
		println(arr1);
		println(arr2);
		
		//1.concat--连接数组(一个个的连)
		var newarr = arr1.concat(arr2);
		println(newarr);
		println(newarr.length);//10
		
		//2.join--把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔(不指定就是逗号)
		//下面这三个打印的都是一样的:1,2,3,4,5,6,aa,bb,cc,dd
		println(newarr);
		println(newarr.join());
		println(newarr.join(","));
		
		println(newarr.join("**"));//1**2**3**4**5**6**aa**bb**cc**dd
		
		//3.pop--返回数组最后一个元素并将其删除;
		println("pop之前的长度:"+newarr.length);
		var a = newarr.pop();
		println("pop的元素是:"+a);
		println("pop之后的长度:"+newarr.length);
		
		//4.push--在数组末尾添加一个元素
		println(arr1);//1,2,3,4,5,6
		arr1.push(19);
		println(arr1);//1,2,3,4,5,6,19
		
		//5.reverse--颠倒数组中的元素
		arr1.reverse();
		println(arr1);//19,6,5,4,3,2,1
		
		//6.shift--删除并返回数组的第一个一个元素
		println(arr1);//19,6,5,4,3,2,1
		var a = arr1.shift();
		println(a);//19
		println(arr1);//6,5,4,3,2,1
		
		//7.unshift--在数组的头部添加一个元素,并且返回添加后的长度
		println("");
		println(arr1);//6,5,4,3,2,1
		println(arr1.unshift("kk"));//7
		println(arr1);//kk,6,5,4,3,2,1
		
		//8.slice(start,end)
		//	start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。
		//也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
		// 	end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。
		//如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
		//如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
		var aa = arr1.slice(3);
		println(aa);//4,3,2,1
		aa = arr1.slice(3,6);
		println(aa);//4,3,2
		
		//9.sort--排序,不给参数使用内部默认排序方案
		//也可以给定一个function(),这相当于Java中的比较器
		var arr = [1,567,-9,5,'ag','ff','tt','tty',88,'fd'];
		var newarr = arr.sort();
		println(arr);//这个方法会对原数组进行排序
		println(newarr);//结果都是:-9,1,5,567,88,ag,fd,ff,tt,tty
		
		//10.splice(index,howmany,item1,.....,itemX)--删除并在原位置插入新的元素
		//index:必选--从哪里开始
		//howmany:必选--删除几个
		//item...可选--需要插入的新元素
		arr.splice(2,3,'ee',33);
		println("-----------");
		println(arr);//-9,1,ee,33,ag,fd,ff,tt,tty
		
		//11.concat和push的区别
		var arr1 = [1,2,3,4,5,6];
		var arr2 = ["aa","bb","cc","dd"];
		var arr = [1,5,'tt','tty',88,'f'];
		var newarr = arr.concat(arr1,arr2);
		println("--------");
		println(newarr);
		println(newarr.length);
		
		arr.push(arr1);
		arr.push(arr2);
		println(arr);
		println(arr.length);
		/* 
			1,5,tt,tty,88,f,1,2,3,4,5,6,aa,bb,cc,dd
			16
			1,5,tt,tty,88,f,1,2,3,4,5,6,aa,bb,cc,dd
			8
		*/
		/* 
			两个都是在后面添加元素的
			concat:将数组中的元素一个个的添加原数组中
			push:将整个数组作为一个整体添加到原数组中(在这里原数组就变为了一个二维数组了)
		*/
	</script>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_38238041/article/details/80718487