我是靠谱客的博主 机灵帅哥,最近开发中收集的这篇文章主要介绍JavaScript数组,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一. JavaScript数组

1.数组(Array):就是一组数据的集合,存储在单个变量下的优雅的方式。

2.创建数组

        1)利用new创建数组

var arr=new Array();

        这里创建的是一个空的数组。

        2)利用字面量创建数组

var arr=[];

        这里创建的也是一种空的数组。

        数组里面的数值之间可以通过逗号进行分割

var arr1=[1,2,'pink',true]

        这种声明数组并赋值,我们称之为数组的初始化,数组里面的数据,我们称之为数组元素。

3.数组的索引(下标):用来访问数组里面的元素,数组的下标从0开始;

 

        获取数组元素的格式: console.log(数组名[索引号])

        当数组中找不到要求要输出的元素,系统输出的结果就是underfined

获取数组的小案例:定义一个数组,里面存在星期一到星期天,在控制台打印输出星期天。

// 获取数组的小案例:定义一个数组,里面存放星期一到星期天,在控制台打印输出星期天
			var arr2=['星期一','星期二','星期三','星期四','星期五','星期六','星期天']
			console.log(arr2[6])

 二. 遍历数组

        遍历数组:就是把数组的元素从头到尾访问一次(通过循环实现数组的遍历),数组的遍历通过for循环实现。

            var arr=['red','pink',1,2,3]
			for(var i= 0;i<=4; i++){
				console.log(arr[i]);
			}

 原因:1.因为数组索引号从0开始,所以i必须从0开始

            2. 输出的时候arr[i],其中i是当计数器进行使用的。

遍历数组的案例:请将['关羽','张飞','马超','赵云','黄忠','刘备','诸葛亮','姜维',pink];数组里的元素依次打印到控制台.

        // 请将['关羽','张飞','马超','赵云','黄忠','刘备','诸葛亮','姜维',pink];数组里的元素依次打印到控制台.
		
		var arr1=['关羽','张飞','马超','赵云','黄忠','刘备','诸葛亮','姜维','pink']
		for(var i =0;i<=7;i++)	{
			console.log(arr1[i]);
		}
			
		// 数组的长度	可以通过   数组名.length 获取数组的长度
			console.log(arr1.length);
			for(var i=0; i<arr1.length ;i++){
				console.log(arr1[i]);
			}

       注意点:   数组的长度是元素的个数,不要跟索引号进行混淆

                        arr.length  动态检测数组元素的个数

数组的案例:

1.数组求和及平均值,求数组[2,6,1,7,4]里面的所有元素和及平均值。

            var sum=0;
			var average=0;
			var arr=[2,6,1,7,4]
			for(var i=0 ;i <arr.length;i++){
				sum+=arr[i]
				// 我们这里加的是数组元素 arr[i] 不是计数器i
			}
			average=sum/arr.length;
			console.log(sum,average);
			// 想要输出多个变量,直接使用逗号进行分开

2.数组中的最大值,求数组[2,6,1,77,52,34,8,2,44,66]中的最大值。

            var arr=[2,6,1,77,52,34,8,2,44,66]
			var max=arr[0];
			for(var i=1 ; i<arr.length; i++){
				if(arr[i]>max){
					max=arr[i];
				}
			}
			console.log('该数组的最大值是'+max)

3.求数组中的最小值,求数组[98,6,1,77,52,34,8,2,44,66,90]中的最小值。

            var arr=[98,6,1,77,52,34,8,2,44,66,90]
			var min=arr[0];
			for(var i=1; i<arr.length;i++){
				if(arr[i]<min){
					min=arr[i]
				}
			}
			console.log('该数组的最小值'+min);

4.数组转换为分割字符,将数组['red','green','blue','pink']转换为字符串,并且用|或其他符号进行分割,(字符串之间的相加就是简单意义上面的拼接)。

            var arr=['red','green','blue','pink'];
			var str ='';
			for (var i=0 ; i< arr.length ; i++){
				str += arr[i] + '|';
			}
			console.log(str);

这种方法只能使用  |  来进行符号的分割,下面这种方法是直接声明一个变量,将所有更改的符号放在里面,后续更改项目符号,就可以实现字符串之间进行分割。

            var arr=['red','green','blue','pink'];
			var str ='';
			var sep ='*';
			// 直接声明一个变量,将所有更改的符号放在里面,后续更改项目符号,就可以实现字符串之间进行分割
			for (var i=0 ; i< arr.length ; i++){
				str += arr[i] + sep;
			}
			console.log(str);

 三.新增数组元素

1.通过修改数组的长度,新增数组的元素

            var arr = ['red','pink','green'];
			console.log(arr.length);
			arr.length = 5 ;
			// 我们把数组的长度修改为5,数组里面就应该有5个元素
			console.log(arr);

  由于对数组进行了扩容,并没有对数组的元素进行添加,所以当输出数组中的没有被定义值的时候,输出的就是underfined。

2.新增数组元素,通过索引号的方式增加数组元素(修改索引号,增加数组元素)

            var arr1 = ['red','green','blue'];
			arr1[3] = 'pink';
			console.log(arr1);
			arr1[4] = 'yellow';
			console.log(arr1);
			arr1[2] = 'white';
			console.log(arr1);

         当输入的索引号被占有,追加的数组元素,就会替换之间的数组元素,输入的索引号没有元素进行占有,就会自动添加数组元素。

数组中新增数组元素:新建一个数组,里面存放1-10。

            var arr2 = [];
			// 声明空数组的时候直接使用[],不需要添加其他的东西
			for(var i =0 ;i<10; i++){
				// arr = i
				// 不能直接对数组进行赋值
				arr2[i] = i+1;
			}
			console.log(arr2)

 

数组的筛选案例:将数组[2,0,6,1,77,56,64,12,9,8,6,88]中大于等于10的元素选出来,放入新的数组当中

数组的筛选  方法一:

            var arr =[2,0,6,1,77,56,64,12,9,8,6,88];
			var newarr=[];
			var j=0;
			for(var i=0 ;i<arr.length;i++){
				if(arr[i]>10){
					// 新数组应该从0 开始  ,然后存入元素,索引号开始递增
					newarr[j]=arr[i];
					j++
				}
			}
			console.log(newarr);

 数组的筛选 方法二:

            var arr =[2,0,6,1,77,56,64,12,9,8,6,88];
			var newArr=[];
			newArr.length;
			// 数组没有存入元素的时候,该数组的长度就为0,当存入元素之后,数组的长度就会默认进行加1的操作
			for(var i=0 ;i<arr.length;i++){
				if(arr[i]>10){
					// 新数组应该从0 开始  ,然后存入元素,索引号开始递增
					newArr[newArr.length]=arr[i];
				}
			}
			console.log(newArr)

 

数组的总结性案例:

1.删除数组中指定的数组元素:要求将数组[2,0,6,77,53,54,0,23,65,9]中的0去掉后,形成一个不包含0的新数组

            var arr=[2,0,6,77,53,54,0,23,65,9];
			var newArr=[];
			for(var i=0;i<arr.length; i++){
				if(arr[i] !==0){
					newArr[newArr.length]=arr[i];
				}
			}
			console.log(newArr);

 

2.要求:将数组['关羽','张飞','马超','赵云','黄忠','刘备','诸葛亮','姜维']的内容反过来存放,最后打印输出的是['姜维', '诸葛亮', '刘备', '黄忠', '赵云', '马超', '张飞', '关羽']

            var arr=['关羽','张飞','马超','赵云','黄忠','刘备','诸葛亮','姜维'];
			var newArr=[];
			for(var i = arr.length - 1 ; i>=0 ; i--){
				newArr[newArr.length]=arr[i]
			}
			console.log(newArr);

3.冒泡排序(升序)冒泡排序是一种算法,把一系列的数据按照一定的顺序进行排列显示。 

            var arr=[1,2,33,44,55,66,88,12,54,76];
			// 外层循环管躺数
			for(var i = 0 ; i <= arr.length - 1; i++){
				// 里面的循环管每一躺的交换次数
				for (var j = 0 ; j <= arr.length-i-1 ; j++){
					// 内部交换两个变量的值,前一个和后面一个数组元素相比较
					if( arr[j] > arr[j + 1]){
						var temp = arr[j];
						arr[j] = arr[j + 1];
						arr[j + 1 ]= temp;
					}
				}
			}
			console.log(arr);

        冒泡排序(降序排序)

            var arr=[1,2,33,44,55,66,88,12,54,76];
			// 外层循环管躺数
			for(var i = 0 ; i <= arr.length - 1; i++){
				// 里面的循环管每一躺的交换次数
				for (var j = 0 ; j <= arr.length-i-1 ; j++){
					// 内部交换两个变量的值,前一个和后面一个数组元素相比较
					if( arr[j] < arr[j + 1]){
						var temp = arr[j];
						arr[j] = arr[j + 1];
						arr[j + 1 ]= temp;
					}
				}
			}
			console.log(arr);

 

最后

以上就是机灵帅哥为你收集整理的JavaScript数组的全部内容,希望文章能够帮你解决JavaScript数组所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部