数组Array()

数组的2种创建方式:

1:数组直接量,在方括号中将数组元素用逗号隔开即可。

var a = [];//没有元素的数组
var b = [1,2,3];//有3个数值的数组

数组直接量不一定要是常量,也可以是任意表达式。

var a = 12<span>;
var b = [7,a+1,a+2,a+3]

数组也可以是包含对象直接量或者其他数组直接量

var c = [[1,{x:1,y:2}],[2,{x:4,y:5}]];

2,使用Array()构造函数

var a = new Array();//创建一个空数组
var b = new Array(3);//长度为3的数组
var c = new Array('red','mike','love');包含3个字符串值得数组

二维数组:

定义:整体上看是一个数组,一中一个元素又是一个数组,即数组中的数组。

var a = [[1,2,3],4,5,6]

数组的遍历:

方法一:for

var arr = [1,2,3,4,5,6<span>];
for(var i = 0; i<arr.length;i++<span>){
  console.log(arr[i]);        
}
//输出
1
2
3
4
5
6

方法二:for in

var arr = [1,2,3,4,5,6<span>];
for(var i in<span> arr){
  console.log(arr[i])  
}
//输出
1
2
3
4
5
6

数组的方法:

join()

将数组中的所有元素转化为字符串,并通过指定的字符进行分割。

var a = [1,2,3,4<span>];
console.log(a.join('-'<span>));
//输出1-2-3-4

如果不指定分隔符,则默认使用逗号

reverse()

将数组中的元素颠倒顺序,返回逆序的数组

var a = [1,2,3<span>];
console.log(a.reverse());
//输出3,2,1
var a = ['x','y','z'<span>];
console.log(a.reverse());
//输出z,y,x

sort()

对数组的元素进行排序:

不带参数情况:

var arr = ['z','x','y'<span>];
console.log(arr.sort());
//输出x,y,z

带参数(必须是函数)情况:

var arr = [111,12,65,888,999,5<span>];
alert(arr.sort(function<span>(a,b){
    return a-<span>b
}))
//输出5,12,65,111,888,999

concat()

连接2个或多个数组。返回一个新的数组

var a = [1,2<span>]
var b = [3<span>];
console.log(a.concat(b));// [1,2,3]
console.log(a.concat(8));// [1,2,8]

slice()

返回指定数组的一个片段或子数组。他的两个参数指定了片段的开始和结束(不包括结束)位置。如果只有一个参数,则为片段的的开始(包括开始)到数组结尾的所有元素。如果出现负数,则是代表数组的最后一个元素,如-3代表数组倒数第三个元素。

var arr = [111,12,65,888,999,5<span>];
alert(arr.slice(2,3))//65
alert(arr.slice(2,4))//65,888

splice()

从数组中删除元素,插入元素或同时完成这2种操作

第一个参数:插入或则删除的起始位置。

第二个参数:删除的个数

忽略第二个参数:起始位置到最后的所有的元素都会别删除。

返回的是由删除元素组成的数组,没有则为空数组

var a= [1,2,3,4,5,6<span>];
alert(arr.splice(4<span>));
//输出5,6
alert(arr.splice(1,2<span>));
//输出2,3

splice()前2个参数指定了要删除的元素,后面的参数则要插入数组的元素,从第一个参数指定位置开始插入

var arr= ['a','bbb','ccc',1,2,1<span>]
alert(arr.splice(1,1,'c','ccc'<span>));
//输出bbb
<span>alert(arr);
//输出a,c,ccc,ccc,1,2,1

push()和pop()

push()在数组末尾添加一个或者多个元素,并返回数组新的长度

pop()删除数组的最后一个元素,并返回删除的值

var arr= [1,2,3,4,5,6<span>]
alert(arr.pop(2<span>))
//输出6
var arr= [1,2,3,4,5,6<span>]
alert(arr.push(2,2<span>))
//输出8

shift和unshift()

shift()删除数组中的第一个元素并将其返回、

unshift()在数组的头部添加一个或多个元素,返回新的数组长度

var arr=<span> []
alert(arr.unshift(1,2<span>))
//输出2
var arr= ['a','bbb','ccc'<span>]
alert(arr.shift());
//输出a

相关推荐