1

Array

概述

  • 一维数组

数组是一个有序的数据集合,可以通过数组名称和索引进行访问。JavaScript中并没有明确的数组数据类型。创建一维数组具有以下几种方式:
var arr = new Array (element 0, element 1,...elementN);
var arr = Array(elechuangiment0,element1,...elementN);
var arr = [elemnt0,element1,...,elementN];

var arr =new Array(arrayLength);
var arr = Array(arrayLength);

  • 二维数组

数组是可以嵌套,这就意味着一个数组可以作为一个数组被包含在另外一个数组里面。利用JavaScript这个特点,创建二维数组,即数组的数组。
[01[03],00[02],01[03]]

数组的常见方法

  • 检测数组

如何确定当前是一个数组,JavaScript提供如下几种方式:
1,typeof无法检测数组对象:typeof[]返回object
2,instanceof:[]instanaceof Arraty返回true/false
3,Object.prototype.toStringcall([]):返回【object Array】
4,Array.prototype.isprototypeOf([]):返回true/false
5,ES5中新方法:Array.isArray([]);返回true/false

  • 转换方法

JavaScript提供了如下方法,用于数组的转换:
toString:把数组转换为字符串,并返回结果。
valueO发():返回数组对象的原始值。
var colors =['red''blue''green'];
console.log(color.toString());//red ,blue,green
console.log(colors.valueOf());//red,blue,green

  • JavaScript提供了如下方法,用于数组的进出栈操作:

push():向数组末端添加一个或多个元素,并返回新的长度。
pop():删除数组的最后一个元素并返回删除的元素。
shift():删除并返回数组的第一个元素。
unshift():像数组的开头添加一个或更多元素。并返回新的长度
var colors =['red''blue''green'];
var count =color.push(black');//4
var item = colors.pop()//black
var count=colors.unshift('pink');//4
var item =color.shift();//pink

  • 排序方法

JavaScript提供了如下方法,用于数组的排序操作:
reverse():反转数组的元素顺序。
sort()对数组的元素进行排序。
var values = [0,1,2,3,4,5];
console.log(values.sort());// 0 ,1,2,3,4,5
console.log(values.reverse());//5,4,3,2,1
reverse()和sort()方法的返回值是经过排序之后的数组。

  • 连接方法

JavaScript提供了如下方法,用于多个数组之间的连接操作:
concat():连接两个或更多的数组,并返回结果。
var color =['red','blue','green'];
var color2 =colors.concat('yellow,'['black','pink']);
console.log(colors2);
//red,blue,green,yellow,black,pink

  • 操作方法

JavaScript提供了如下方法,用于数组的删除,插入和替换操作:
slice():选区数组的一部分,并返回一个新数组。
splice()从数组中添加或删除元素。
var colors= ['red','blue','green','yellow'];
var color2 = colors.slice(1);//blue ,green,yellow
var color 3 =colors.cplice(0,1);//red
color.splice(1,0,'orange');//red orange,blue ,green ,yellow
var remove2= colors.splice(1,1,'purple');//blue
console.log(colors);//red pirple ,green ,yellow

  • 位置方法

JavaScript提供了如下的方法,用于获取数组中指定元素的所引值:
indexOf():搜索数组中的元素,并返回它的所在的位置。
lastindexOf()返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后先前搜索。
var numbers= [1,2,3,4,5,4,3,2,1];
console.log(number.indexOf(4));//3
console.log(numbers.indexOf(4));//5

迭代与归并方法

  • 迭代方法

JavaScript提供了如下方法,用于数组的迭代遍历:
every():判断数组中每一个元素是否都满足fun函数定义的条件。只有都满足才返回true。否则返回false。
fliter():专门用于筛选出数组中符合fun函数判断条件的元素组成的新数组。
forEach():专门用于对原数组中每一个元素执行相同的fun函数对象归规定的操作。
map():专门用于基于原数组创建新数组对象。
some():判断数组中是否包含满足fun函数定义的条件元素。只要包含就返回ture否则返回false

  • 归并方法

JavaScript提供了如下方法,用于数组迭代归并:
reduce():将数组从左向右迭代。
reduceright():将数组从右向左
var arr = [1,2.3,4,5];
var sum= arr.reduce(function(prev,curr,icdex,array){
}));
console.log(sum);//15


李通
15 声望5 粉丝