javascript中数组基础---方法的使用及分类
Posted 94Lucky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript中数组基础---方法的使用及分类相关的知识,希望对你有一定的参考价值。
在javascript中,数组的使用很重要。数组中的方法有很多,返回的值也不尽相同,我这里做了些
简单的分类及其应用。
按照原数组的变化,我分了两大类:
一.原数组变化的
1.push 尾部添加元素
可以添加一个或多个元素,添加数组后,不以元素添加
var arr=[1,2,3]; var arr1=arr.push(4,5,6);
var arr2=arr.push([7,8]) console.log(arr,arr1) // [1,2,3,4,5,6] 6
console.log(arr,arr2) // [1,2,3,[7,8]] 4
//返回数组的新长度
2.unshift 头部添加元素
可以添加一个或多个元素,添加数组后,不以元素添加 (和push的应用一样)
3.pop 尾部删除元素
删除尾部一个元素
var arr=[1,2,3]; var arr1=arr.pop(); console.log(arr,arr1) // [1,2] 3
//返回删除的元素
4.shift 头部删除元素
删除头部一个元素 (和pop的应用一样)
5.splice 添加,删除,替换,清空
可以添加,删除一个或者多个元素,如果添加的是数组,和push一样,都是以数组形式存入,而不是元素。
var arr=[1,2,3]; var arr1=arr.splice(0,2,4,5); //头部添加 var arr2=arr.splice(-1,0,4,5) //尾部添加 var arr3=arr.splice(1,2) //删除 var arr4=arr.splice(0) //清空 一直向后删除 var arr5=arr.splice(1,1,5) //替换
// 返回被删除元素组成的新数组,不删除就返回空数组
6.reverse 变换元素顺序
前后顺序变换
var arr=[1,2,3]; var arr1=arr.reverse(); console.log(arr,arr1) //[3,2,1] [3,2,1]
//返回新数组(排序后)
7.sort 排序
从小到大: a-b>0 ->arr[i]-arr[i+1]>0-->arr[i]>arr[i+1];
从大到小:b-a>0 ->arr[i+1]-arr[i]>0--->arr[i]<arr[i+1];
var arr = [1, 5, 3, 2, 7, 4, 7, 15, 6, , 2, 8, 10, 9]; var arr1=arr.sort(function(a,b){ return a-b; }); var arr2=arr.sort(function(a,b){ return b-a; })
//返回新数组(排序后)
二.原数组不变化的
1.concat 拼接,复制
将当前数组与多个元素或者多个数组连接形成新的数组
3)forEach只能遍历数组,不能返回
var arr=[1,2,3,4]; var arr1=arr.concat(5,6,7); var arr2=arr.concat([5,6,7]); var arr3=arr.concat([5,6,7],[8,9,10]); var arr4=arr.concat(5,6,7.[8,9,10]); console.log(arr,arr1,arr2,arr3,arr4) //[1,2,3,4,5,6,7,8,9,10]
//返回新数组
var arr5=arr.concat(); //复制原数组
2.join 连接数组元素
以某个符号连接数组的元素,形成字符串
var arr=[1,2,3,4,5]; var str=arr.join("#");//以#符号连接数组的元素,形成字符串 1#2#3#4#5 var str=arr.join();//默认使用逗号连接数组元素,形成字符串 1,2,3,4,5 var str=arr.join("");//使用空字符连接将会形成元素紧密连接的字符串 12345
//返回元素连接成的字符串
3.indexOf 查询元素
查找某个元素的下标
var arr=[1,2,3,4,5,6]; var index=arr.indexOf(4); var index=arr.indexOf(7); console.log(index); //如果是-1就是没有找到,正数就是下标
//返回的是下标
4.forEach 遍历数组(不返回)
1)遍历数组,回调函数中有三个参数,每个元素,下标,原数组 ,forEach本身就是函数
2)遍历一个元素,就执行该函数一次
var arr=[1,2,3]; arr.forEach(function(item,index,array){ console.log(item,index,array) })
//什么也不返回 非要打印返回,会打印undefined出来
5.map 遍历数组(必须返回)
1)遍历数组,并且使用return返回新元素到新数组中
2)新数组的长度与原数组的长度相同,如果没有使用return,就会返回默认的undefined
var arr=[2,3,,4,5,6]; var arr1=arr.map(function(item,index,array){ console.log(item,index,array); // [3,4,5,6,7] return item+1; });
//返回新数组(不管return什么,都是以数组的形式返回)
6.
以上是关于javascript中数组基础---方法的使用及分类的主要内容,如果未能解决你的问题,请参考以下文章