JavaScript的数组Array

数组(Array)

数组也是一个对象,是一个用来存储数据的对象
	和Object类似,但是它的存储效率比普通对象要高
数组中保存的内容我们称为元素	
数组使用索引(index)来操作元素
索引指由0开始的整数
数组的操作:
	创建数组
		var arr = new Array();
		var arr = [];
		
	向数组中添加元素
		语法;
			数组对象[索引] = 值;
			arr[0] = 123;
			arr[1] = "hello";
			
	创建数组时直接添加元素
		语法:
			var arr = [元素1,元素2....元素N];
			例子:
				var arr = [123,"hello",true,null];
				
	获取和修改数组的长度
		使用length属性来操作数组的长度
		获取长度:
			数组.length
			length获取到的是数组的最大索引+1
			对于连续的数组,length获取到的就是数组中元素的个数
		修改数组的长度
			数组.length = 新长度
				如果修改后的length大于原长度,则多出的部分会空出来
				如果修改后的length小于原长度,则原数组中多出的元素会被删除
		向数组的最后添加元素
			数组[数组.length] = 值;

数组的方法

	concat() 方法用于连接两个或多个数组。
				  该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
				  
	push()
		用来向数组的末尾添加一个或多个元素,并返回数组新的长度
		语法:数组.push(元素1,元素2,元素N)
		
	pop()
		用来删除数组的最后一个元素,并返回被删除的元素
		
	unshift()
		向数组的前边添加一个或多个元素,并返回数组的新的长度
		
	shift()
		删除数组的前边的一个元素,并返回被删除的元素
		
	slice()
		可以从一个数组中截取指定的元素
		该方法不会影响原数组,而是将截取到的内容封装为一个新的数组并返回
		参数:
			1.截取开始位置的索引(包括开始位置)
			2.截取结束位置的索引(不包括结束位置)
				第二个参数可以省略不写,如果不写则一直截取到最后
			参数可以传递一个负值,如果是负值,则从后往前数
			
	splice()
		可以用来删除数组中指定元素,并使用新的元素替换
			该方法会将删除的元素封装到新数组中返回
		参数:
			1.删除开始位置的索引
			2.删除的个数
			3.三个以后,都是替换的元素,这些元素将会插入到开始位置索引的前边
			
	find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。
		find() 方法为数组中的每个元素都调用一次函数执行:
		当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
		如果没有符合条件的元素返回 undefined
		注意: find() 对于空数组,函数是不会执行的。
		注意: find() 并没有改变数组的原始值。

	join() 方法用于把数组中的所有元素转换一个字符串。
		元素是通过指定的分隔符进行分隔的。

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

	sort() 方法用于对数组的元素进行排序。
		排序顺序可以是字母或数字,并按升序或降序。
		默认排序顺序为按字母升序。
		注意:当数字是按字母顺序排列时"40"将排在"5"前面。
		使用数字排序,你必须通过一个函数作为参数来调用。
		函数指定数字是按照升序还是降序排列。
		注意: 这种方法会改变原始数组!
		升序:
		var arr = [40,100,1,5,25,10];
		arr.sort(function(a,b){return a-b});		//1,5,10,25,40,100
		降序:
		var arr= [40,100,1,5,25,10];
		arr.sort(function(a,b){return b-a}); 		//100,40,25,10,5,1

	toString() 方法可把数组转换为字符串,并返回结果。
		注意: 数组中的元素之间用逗号分隔。

	reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
		reduce() 可以作为一个高阶函数,用于函数的 compose。
		注意: reduce() 对于空数组是不会执行回调函数的。

改变原数组的方法

	reverse
	sort
	push(返回数组新的长度)
	pop(被删除的元素作为返回值返回)
	unshift(返回数组新的长度)
	shift(被删除的元素作为返回值返回)
	splice(被删除的元素作为返回值返回)

遍历数组

	遍历数组就是将数组中元素都获取到
	一般情况我们都是使用for循环来遍历数组:
		for(var i=0 ; i<数组.length ; i++){
			//数组[i]
		}
		
	使用forEach()方法来遍历数组(不兼容IE8)
	
		数组.forEach(function(value , index , obj){
		
		});
		
		forEach()方法需要一个回调函数作为参数,
			数组中有几个元素,回调函数就会被调用几次,
			每次调用时,都会将遍历到的信息以实参的形式传递进来,
			我们可以定义形参来获取这些信息。
			value:正在遍历的元素
			index:正在遍历元素的索引
			obj:被遍历对象
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值