js数组方法

1.在数组中添加元素
①array.push()
array.push()在原数组尾部添加元素,返回的结果是新数组的长度。
②array.unshift()
array.unshift()在原数组的头部添加元素,返回的结果是新数组的长度。

2.删除数组元素
①array.pop()
array.pop()删除数组的最后一个元素,返回的结果是删除的那个元素。
②array.shift()
array.shift()删除数组的开头的第一个元素,返回的结果是删除的那个元素。

3.查找数组元素的索引号
①array.indexOf()
array.indexOf()返回该数组元素的索引号(如果有相同的元素,则返回第一个元素的索引号)。如果数组不存在要找的元素,则返回-1.
②array.lastIndexOf()
array.lastIndexOf()返回该数组元素的索引号,跟indexOf()区别是lastIndexOf()是从尾部开始查找。
数组去重可以利用indexOf()方法
例如:给数组a=[1,1,2,2,3,3] 去重;
function unique(arr){
var newArr=[];
for(var i=0;i<arr.length;i++){
if(newArr.indexOf(arr[i])==-1){
newArr.push(arr[i])
}
}
return newArr;
}
unique(a);

4.连接两个数组
contact()连接两个或多个数组,返回新数组。

5.截取数组
slice()返回被截取部分的子数组。(不会影响原来的数组)
slice(begin,end)
begin是必需填的,可为负数,如果begin是-1,就是从数组最后一个截取,-2,表示从倒数第二个截取。
end可选,如果不规定,就是截取从begin位置到数组的末尾。

6.删除/添加数组
splice():返回删除部分的子数组,原来的数组会受到影响。
splice(index,howmany,item1,…,itemX)
index:必需,可为负数,如果index为负数,则从末尾规定位置。
howmany:必需,要删除元素的个数。如果为0,则不删除。
item:可选,向数组添加的新元素。

7.数组转化为字符串
①toString()将数组转换为以逗号‘,’为分隔符的字符串。
②join(分隔符)将数组转换成字符串分隔符可自定义,

8.遍历数组方法
①forEach()
array.forEach(function(currentValue,index,array){})
currentValue:当前数组项目值。
index:当前索引号。
array:数组本身。
②filter()
array.filter(function(currentValue,index,array){})
currentValue:当前数组项目值
index:当前索引号
array:数组本身
查找满足条件的数组元素,返回含有满足条件元素的数组。
例:查找数组arr中的属于偶数的元素
var arr=[1,2,3,4,5];
var newArr=arr.filter(function(item,index){
return item%2==0;
}
③some()
array.filter(function(currentValue,index,array){})
用于检测数组中的元素是否满足指定条件,返回的结果为Boolean,如果查找到这个元素,就返回true,如果没找到就返回false。
例;查找数组arr中是否有大于30的元素
var arr=[10,20,30,40];
var flag=arr.some(function(item){
return item>30;
)
flag的值为true
some()只要找到第一个符合条件的就会停止循环。

④map()
map(映射 一对一)根据数组里的每一项,把处理后的数组返回一个新数组。
例:将arr的每一项都加10.
var arr=[1,2,3,4];
var newArr=arr.map(function(item){
return item+10;
})
newArr的结果为:[11,12,13,14]

⑤every()
判断每一项是否都符合条件,如果都符合就返回true。如果有不符合的项目,就返回false。
例;判断arr的项目是否都小于6
var arr=[1,2,3,4];
var flag=arr.every(function(item){
return item<6;
})
flag的值为:true

9.数组的扩展方法
①扩展运算符(…)
扩展运算符可以将数组或者对象转为用逗号分隔的参数序列
例如 var arr=[1,2,3]
…arr //1,2,3
扩展运算符的运用
a.合并数组
例:将arr1和arr2合并
let arr1=[1,2,3];
let arr2=[4,5,6];
let arr3=[…arr1,…arr2] 或者let arr3=arr1.push(…arr2);

b.将伪数组或者可遍历的对象转为真正的数组
例:将获得的dom标签元素集合转化为数组
let divs=document.getElementsByTagName(‘div’);
divs=[…divs];
此处也可以使用Array.from()方法将其转为数组
divs=Array.from(divs);
②Array.from()
Array.from(伪数组,arg2)
第一个参数是要转换的伪数组,
第二个参数的作用类似于map方法,用来对每个元素进行处理,将处理后的值放入一个新数组。
例:将arryLike的对象转化为含有其属性值都乘以2的元素数组
var arryLike={
0:1,
1:2,
2:3,
length:3
}
var newArr=Array.from(arryLike,item=>item*10);
newArr的结果是:[10,20,30]

③find()
用于找到第一个符合数组成员,如果没有找到返回undefined。
例:查找id为2 的数组成员
let arry=[{
id:1,
name:‘andy’
},{
id:2,
name:sweet
}]
let target=arry.find(item=>item.id==2);
④findeIndex()
找出第一个符合条件的数组元素的索引号。如果没有符合条件的元素,就返回-1
例:查找大于数组中15的元素的索引号
let arr=[10,20,14,12];
let index=arr.findIndex(item=>item>15);
index的值为:1
⑤includes()
表示某个数组是否包含给定的值,返回的结果是Boolean
例:查看数组中是否含有值为25的元素
let arr=[1,20,23,25];
arr.includes(25) //true

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值