数组常用的方法(es4/es5/es6)

1、unshift():头部添加,可以添加多个,返回添加后数组的长度

let arr = [1,2,3];
let arr1 = arr.shift();
console.log(arr); // [2,3]
console.log(arr1);// 1

2、shift():头部删除,只能删除一个,返回删除后的数据

 		let arr = [1,2,3];
        let arr1 = arr.unshift(4,5);
        console.log(arr); // [4,5,1,2,3]
        console.log(arr1); // 5

3、push():尾部添加,可以添加多个,返回添加后数组的长度


 		let arr = [1,2,3];
        let arr1 = arr.push(4,5);
        console.log(arr); //[1,2,3,4,5]
        console.log(arr1);// 5

​

4、pop():尾部删除,只能删除一个,返回删除后的数据

let arr = [1,2,3];
let arr1 = arr.pop();
console.log(arr); // [1,2]
console.log(arr1); // 3

5、forEach():数组遍历。

遍历一个数组。有3个参数

参数1:数组中的每一项

参数2:数组中的每一项下标

参数3:当前遍历的数组

		let arr = [1,2,3];
        arr.forEach((item,index,arr1)=>{
            console.log(item);
            // 每一项
            console.log(index);
            // 下标
            console.log(arr1);
            // 当前遍历的数组
        })

注意:没有返回这,不能停止循环 

6、filter():数组的过滤

用于数组的过滤,有返回值。返回一个新数组,把符合条件的过滤出来,或不符合条件的过滤出去。

参数1:每一项

参数2:当前下标

参数3:过滤的数组

		let arr = [1,2,3];
        let arr2 =  arr.filter((item,index,arr1)=>{
           return item ===1
        });
        console.log(arr); // [1,2,3]
        console.log(arr2); // [1]

7、 concat():数组的合并

用于2个或多个数组的合并,返回一个新数组。
语法:往那个数组中合并.concat(数组1,数组2…)

let arr = [1, 2, 3];
        let arr1 = [4, 5, 6];
        let arr2 = [7, 8, 9]
        let arr3 = arr.concat(arr1, arr2);
        console.log(arr); //  [1, 2, 3]
        console.log(arr1); // [4, 5, 6]
        console.log(arr2); // [7, 8, 9]
        console.log(arr3); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

8、every():检测数组中所有元素是否符合条件

用于检测数组中所有的元素都是否符合条件,如果有一个不符合就会返回false。都符合返回true,必须return

let arr = [1, 2, 3];
        let flag = arr.every((item, index, val) => {
            return item == 1;
        })
        console.log(flag); // false 

9、find():查找符合条件的第一个元素

用于查找数组中某一个符合条件的元素,返回这个元素,必须return

		let arr = [{age:1}, 2, 3];
        let flag = arr.find((item) => {
            return item.age == 1;
        })
        console.log(flag); // {age: 1}

10、findIndex():查找符合条件的第一个元素下标

用于查找数组中某一个符合条件的元素下标,返回这个下标,必须return

let arr = [{age:1}, 2, 3];
        let flag = arr.findIndex((item) => {
            return item.age == 1;
        })
        console.log(flag); // 0

11、flat():提取数组中的数组

多维数组转为一维数组
参数:转换几层数组,不会改变原数组

		let arr = [1, 2, 3,[4,5,6,[7,8,9],[10,11,12,[13]]]];
        let flag = arr.flat(3);
        console.log(flag); // (7) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

12、join():数组转字符串

用于把数组转换为字符串。
参数:数组之间的逗号用什么代替

		let arr = [1, 2, 3,4];
        let flag = arr.join("|");
        console.log(flag); //  1|2|3|4

13、map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。

var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function(item){
return item*item;
});
console.log(arr2); //[1, 4, 9, 16, 25]

14、reduce():计算

用于计算数组相加的和或相乘 等
参数1:代表第一项
参数2:代表下一项
必须有return

        let arr = [1, 2, 3,4];
        let flag = arr.reduce((total,num)=>{
            return total + num;
        });
        console.log(flag); //  10

15、splice():删除

用于截取一段数组
参数1:从下标几开始
参数2:删除几个
参数3:删除的地方用什么代替
截取时包含 开始下标,不包含结束下标,会改变原数组

        let arr = [1, 2, 3,4];
        let flag =arr.splice(0,2,'a','b','c');
        console.log(arr);  // ["a", "b", "c", 3, 4]
        console.log(flag); //  [1, 2]

16、some():数组中是否包含指定元素

检测数组中是否包含指定元素,如果有一个元素符合就返回true,否则返回false,必须有return,不会改变原数组

        let arr = [1, 2, 3,4];
        let flag =arr.some((item,index)=>{
            return item === 5;
        });
        console.log(arr);  // 
        console.log(flag); //  false

17、sort():数组排序

数组的排序
参数1:当前项
参数2:下一项
必须return,会改变原数组

        let arr = [1, 2, 3, 4];
        let flag = arr.sort((a, b) => {
            return b - a
        });
        console.log(arr); // [4, 3, 2, 1]
        console.log(flag); //  [4, 3, 2, 1]

18、slice():截取

用于截取数组元素
参数1:从下标几开始
参数2:到参数几结束
截取的数据包含开始,不包含结束,不会改变原数组

        let arr = [1, 2, 3, 4];
        let flag = arr.slice(0,3,);
        console.log(arr); // [1, 2, 3, 4]
        console.log(flag); //  [1, 2, 3]

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值