js 数组 常用方法

let arr=[{a:1},{a:2},{a:3}];
//forEach 数组循环
// 返回void
arr.forEach(i=>{
// i为arr中的元素
})
//filter 数组过滤 如果return 的值为true 则将当前的遍历的元素添加到返回的数组中去
// 返回[]
arr.filter(i=>{
return i.a>2;
})
//map 数组循环 遍历数组,并将遍历数组中的每一个元素映射返回 注意不管是否有return值返回的数组的length不变 只是无return值的元素位置会变成undefined
arr.map(i=>{

})
//every 数组循环 判断数组内每一个元素是否都满足件 返回bool 注意 当发现一个元素不满足条件时,遍历终止 返回false
arr.every(i=>{
return i.a>=1;
})
//some 数组循环 判断数组内是否存在满足条件的元素,返回bool 注意 当发现一个元素满足条件时,遍历终止 返回true
arr.some(i=>{
return i.a>2;
})
//reduce 数组循环 将数组内所有元素相加 并返回最终值 注意 此方法第一次遍历时a为数组第一个元素 b为第二个元素,第二次及第二次以上遍历时 a为前a与b之和 b为前b的下一个元素
arr.reduce((a,b)=>{
return {a:a.a+b.a};
})

//find 数组循环 遍历数组内部所有元素,返回第一个满足条件的元素同时遍历结束,如果没有则返回undefined
arr.find(i=>i>10);




//注意!!! 以下皆为数组变异方法,会改变数组本身的状态

//push 在数组的末尾添加一个元素 返回数组长度
arr.push({a:4})

//pop 移除数组最后一个元素 返回移除的元素
arr.pop()


//unshift 在数组的首部添加一个元素 返回数组长度
arr.unshift()


// shift 移除数组的第一个元素 返回移除的元素
arr.shift()


//splice 万能方法 此方法可实现数组的增加 删除 以及改变元素位置;返回 删除的元素组成的数组若没有删除的元素则返回一个空数组 第一个执行操作的初始位置,第二个需要影响多少个元素,第三个及第三个以后表示插入多少个元素插入多少个元素;
let brr=[1,2,3,4,5,6];
let ret= brr.splice(0,5);//执行删除方法 从0号位元素开始包括第一个元素,删除五个元素,插入0个元素 返回删除的元素;
let ret2=brr.splice(0,5,5,4,3,2,1);//执行更换方法,从0号位元素开始包括第一个元素,删除五个元素,插入5,4,3,2,1元素 返回删除的元素
let ret3=brr.splice(0,0,99,99)//执行插入方法,从第0号元素开始,删除0个元素,插入99,99,返回删除的元素

//sort 数组排序 此方法可实现数组的自定义的排序 此方法每次遍历返的a的值由return,其内部有一个排序算法,感兴趣的可以自己打印了解,这里提供一个比较方便的记忆方法b-a为降序排列,a-b为升序排列,返回一个数组;
let arr2=[1,9,8,2,5,6];
let ret1=arr2.sort((a,b)=>{
return b-a;
});//注意 此方法放回的并不是一个全新的数组而是一个引用,其效果等同ret1=arr2;!!此方法也是一个变异方法

//reverse 数组反转 将数组的排列顺序反转过来 返回 反转顺序的数组的引用 其效果等同于 ret=arr !!此方法也是一个变异方法
let ret= arr.reverse();


// 以下为非变异方法
//join 使用指定的连接符拼接数组 返回一个字符串
let arr3=[1,2,3,4,5,6,4];
let str=arr3.join(',');
// console.log("str",str);//str 1,2,3,4,5,6,4 可使用join("")空字符串 返回1234564

//toString 将数组内部的元素拼接成一个字符串 不能指定拼接字符串,如有拼接需求推荐使用join
let arr4=[1,2,3,4,5,6];
str= arr4.toString();
console.log('str',str);

//concat 拼接数组 将一个数组拼接至concat后 返回两个数组拼接的新数组
let concat=[1,2,3,4,5,6,7];
let concat1=[1,2,3,4,5,6,7];
let con=concat.concat(concat1);

//slice 截取数组 返回一个截取元素组成的数组 非变异方法 接受2个参数 第一个位截取开始的位置 第二个为截取数量
let ret =arr.slice(0,5);

 

转载于:https://www.cnblogs.com/wrhbk/p/11017638.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值