js常用数组操作

目录

1. Array.push(),向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。

	var arr=[1,2,3];
    arr.push(4,5,6);
    console.log(arr);

在这里插入图片描述
2. Array.pop(),删除并返回数组的最后一个元素,若该数组为空,则返回undefined。原数组改变。

	var arr=[1,2,3];
    arr.pop();
    console.log(arr);

在这里插入图片描述

3. Array.unshift(),向数组的开头添加一个或多个元素,并返回新的数组长度。原数组改变。

	var arr=[1,2,3];
    arr.unshift(4,5,6);
    console.log(arr);

在这里插入图片描述

4. Array.shift(),删除数组的第一项,并返回第一个元素的值。若该数组为空,则返回undefined。原数组改变。

	var arr=[1,2,3];
    arr.shift();
    console.log(arr);

在这里插入图片描述

5. Array.concat(arr1,arr2…),合并两个或多个数组,生成一个新的数组。原数组不变。

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

在这里插入图片描述

6. Array.join(),将数组的每一项用指定字符连接形成一个字符串。默认连接字符为 “,” 逗号。

		var arr1=[1,2,3];
        console.log(arr1.join('~~'));

在这里插入图片描述

7. Array.reverse(),将数组倒序。原数组改变。

	var arr1=[1,2,3];
    console.log(arr1.reverse());

在这里插入图片描述

8. Array.sort(),对数组元素进行排序。按照字符串UniCode码排序,原数组改变。

  • 从小到大
	var arr1=[5,9,7,1,6,2,3];
    console.log(arr1.sort());

在这里插入图片描述

  • 从大到小
		var arr1=[5,9,7,1,6,2,3];
        function compare(a,b){
            return b-a;
        }
        console.log(arr1.sort(compare));

在这里插入图片描述

  • 按照数组对象中的某个值进行排序
		var arr=[
            {name:"A",age:18},
            {name:"B",age:19},
            {name:"C",age:6},
            {name:"D",age:99}
        ];

        function compare(param) {
            return function sortAge(a,b) {
                return a[param]-b[param];
            }
        }

        arr.sort(compare("age"))

        console.log(arr)

在这里插入图片描述
9.Array.map(function),原数组的每一项执行函数后,返回一个新的数组。原数组不变。(注意该方法和forEach的区别)。

		var arr=[1,2,3,4];
        var newNum=arr.map((ele,index)=>{
            return arr[index]+ele;
        })

        console.log(newNum)

在这里插入图片描述

10.Array.slice(start,end),从start开始,end之前结束,end是开区间;如果不给end值,从start开始到数组结束。start可以给负值,-1表示数组最后位置,-2表示倒数第二个,以此类推,顾前不顾后。原数组不改变。

		var arr=[1,2,3,4,5,6];
        console.log(arr.slice(1,4));

在这里插入图片描述

11.Array.splice(index,howmany,arr1,arr2…) ,删除元素并添加元素,从index位置开始删除howmany个元素,并将arr1、arr2…数据从index位置依次插入。如果arr1、arr2是数组,那么插入的也是数组而不是数组中的元素。howmany为0时,则不删除元素。原数组改变。

		var arr1=[1,2,3,4,5,6];
        var arr2=[2,3,4];
        var arr3=[5,6];

        arr1.splice(2,2,arr2,arr3);

        console.log(arr1);

在这里插入图片描述

12.Array.forEach(function),用于调用数组的每个元素,并将元素传递给回调函数。原数组不变。(注意该方法和map的区别,若直接打印Array.forEach的返回值,结果为undefined)。

		var numbers = [4, 9, 16, 25];

        function myFunction(item, index) {
            console.log("item:" + item + "__index:" + index);
        }
        numbers.forEach(myFunction);
        console.log("_________________");
        for (var i = 0; i < numbers.length; i++) {
            console.log("item:" + numbers[i] + "__index:" + i);
        }

在这里插入图片描述

13.Array.filter(function),过滤数组中,符合条件的元素并返回一个新的数组。

		var arr1=[1,2,3,4,5,6];

        var newArr=arr1.filter((number,index,arr)=>{
            return number>3;
        })

        console.log(newArr)

在这里插入图片描述

14.Array.every(function),对数组中的每一项进行判断,若都符合则返回true,否则返回false。

		var arr1=[1,2,3,4,5,6];

        var res=arr1.every((number,index,arr)=>{
            return number>-1;
        })

        console.log(res)

在这里插入图片描述
15.Array.some(function),对数组中的每一项进行判断,若都不符合则返回false,否则返回true。

		var arr1=[1,2,3,4,5,6];

        var res=arr1.some((number,index,arr)=>{
            return number>15;
        })

        console.log(res)

在这里插入图片描述
16.Array.reduce(function),reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

		var arr1=[1,2,3,4,5,6];

        var res=arr1.reduce((a,b)=>a+b);

        console.log(res)

在这里插入图片描述

17.Array.includes(ele),includes方法查找数组是否存在当前元素,返回true/false

	var arr=[1,2,3,4,5,6,7,8,8]

    console.log(arr.includes(8))
    console.log(arr.includes(9))

在这里插入图片描述

18.Array.copyWithin(target,start,end),target表示目标索引,start与end表示起止索引,左闭右开,把start到end的元素copy到target开始的索引后面。

	var arr=[1,2,3,4,5,6,7,8,8]

    arr.copyWithin(3,0,3);
    console.log(arr)

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值