JavaScript数组的学习

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript数组的学习相关的知识,希望对你有一定的参考价值。

1数组的创建

1 var arr1 = new Array();
2 var arr2=[1,2,3];

2数组常用的方法:

push,pop,shift,unshift,splice,slice,sort,reverse

2.1 push方法:在元素尾端插入元素

1  var arr=[1,2,3];
2  var result = arr.push(1,3,4);//返回新数组的长度
3  console.log("arr:"+arr);
4  console.log("result:"+result);

结果:

arr:1,2,3,1,3,4
result:6

 

2.2 pop方法:在元素末端弹出一个元素

1 var arr=[1,2,3];
2 var result = arr.pop();//返回弹出元素的值
3 console.log("arr:"+arr);
4 console.log("result:"+result);

结果:

arr:1,2
result:3

 

2.3 shift方法:在元素的首位弹出一个元素

1 var arr=[1,2,3];
2 var result = arr.shift();//返回弹出元素的值
3 console.log("arr:"+arr);
4 console.log("result:"+result);

结果:

arr:2,3
result:1

 

2.4 unshift方法: 在元素的首位插入元素

1 var arr=[1,2,3];
2 var result = arr.unshift(4,5);//返回新数组的长度
3 console.log("arr:"+arr);
4 console.log("result:"+result);

结果:

arr:4,5,1,2,3
result:5

 

2.5 splice方法: 对数组截取,然后插入数据,直接操作数组本身

1 var arr=[1,2,3,4,5];
2 arr.splice(1,2,3,4);
3 console.log("arr:"+arr);

结果:

arr:1,3,4,4,5

分析:

第一个参数:截取开始的位置

第二个参数:截取的个数

第二个参数以后:插入的数据,如果没有第三个参数,则不插入

 

2.6 slice方法: 对数组截取,但不对数组本身操作

1 var arr=[1,2,3,4,5];
2 var result =arr.slice(2,4);
3 console.log("arr:"+arr);
4 console.log("result:"+result);

结果:

arr:1,2,3,4,5
result:3,4

分析:

第一个参数:截取开始的位置 为为闭区间

第二个参数:截取结束的位置 为开区间

如:[2,4)

 

2.7 concat方法: 对数组拼接,但不操作数组本身

1 var arr1 =[1,2,3];
2 var arr2=[3,4,5];
3 var result = arr1.concat(arr2);
4 console.log("arr1:"+arr1);
5 console.log("arr2:"+arr2);
6 console.log("result:"+result);

结果:

arr1:1,2,3
arr2:3,4,5
result:1,2,3,3,4,5

 

2.8 join方法: 对数组每个元素之间插入元素,但不操作数组本身

1 var arr =[1,2,3];
2 var result =arr.join("-");
3 console.log("arr:"+arr);
4 console.log("result:"+result);

结果:

arr:1,2,3
result:1-2-3

2.9 reverse方法: 把数组里的元素的位置倒过来

1 var arr =[1,2,3];
2 var result =arr.reverse();
3 console.log("arr:"+arr);

结果:

arr:3,2,1

 

2.10 sort方法: 把数组里元素排序(有缺陷)

1 var arr =[4,10,1,5];
2 var result =arr.sort();
3 console.log("arr:"+arr);

结果:

arr:1,10,4,5

分析:

在比较的过程中这个10是先按第一位比较再按第二位比较,所以排在了1后面,4前面。

2.11 sort方法扩张

 1         var arr =[4,10,1,5];
 2         function  compare(value1,value2){//自定义排序规则
 3             if(value1>value2){
 4                 return 1;
 5             }else if(value1<value2){
 6                 return -1;
 7             }else{
 8                 return 0;
 9             }
10         }
11         var result =arr.sort(compare);使用自定义的排序规则 实现从小到大排序 要想实现从大到小 修改排序规则
12         console.log("arr:"+arr);

结果:

arr:1,4,5,10

 

以上是关于JavaScript数组的学习的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript单行代码,也就是代码片段

JavaScript 片段

JavaScript 代码片段

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务