JS数组常用的方法

  1. 栈方法(会改变原数组)
    push() :返回改变后的数组长度,在数组末尾添加
    pop() :移除数组中的最后一项,并返回被移除的项
    var arr = [1, 2, 3];
    var added = arr.push(4); //4
    console.log(arr); //1,2,3,4
    var removed = arr.pop(); //4
    console.log(arr); //1,2,3,4
  1. 队列方法(会改变原数组)
    shift() :移除数组中的第一项,并返回该项
    unshift() :返回改变后的数组长度,在数组头添加
    var arr = [1, 2, 3];
    var added = arr.unshift(0); //4
    console.log(arr); //1,2,3,4
    var removed = arr.shift(); //4
    console.log(arr); //1,2,3
  1. 操作方法
    concat() :不改变原数组,连接数组,返回改变后的数组
    slice() :不改变原数组,基于当前数组中的一个或多个项创建一个新数组,接受一个或两个参数,即要返回的项的起始和结束位置(不包括结束位置),若参数中有负数,则用数组长度加上该数来确定相应的位置,若结束位置小于起始位置,则返回空数组。
    splice(起始位置,要删除的项数,要插入的值) :会改变原数组,向数组的中部插入值,返回一个数组,内容为被删除的项
    var arr = ["a", "b"]
    var arr1 = arr.concat(["c", "d"]);
    console.log(arr1); // a,b,c,d
    var arr2 = arr1.slice(1, 2); //b
    var arr3 = arr1.splice(1, 2, "e", "f");
    console.log(arr1); //a,e,f,d
    console.log(arr3); //b,c
  1. 迭代方法:都接受两个参数,每一项上运行的函数,作用域对象,函数有三个参数(item,index,array)
    用于查询每一项是否满足某个条件,都不会改变原数组
    ① every():每一项都满足,返回true,否则返回false;
    ②some():任意一项满足,返回true
    filter():利用指定的函数确定在返回的数组中包含某一项
    map():返回一个数组,数组的每一项都在原数组的基础上的运行结果
    forEach():相当于for语句
    var arr = [1, 2, 3, 4, 5];
    var eve = arr.every(function (item, index, arr) {
        return (item > 3);
    })
    console.log(eve); //false
    var s = arr.some(function (item, index, arr) {
        return (item > 2);
    })
    console.log(s);
    var f = arr.filter(function (item, index, arr) {
        return (item > 2);
    })
    console.log(f);
    var m = arr.map(function (item, index, arr) {
        return (item * 2);
    })
    console.log(m);
    var fe = arr.forEach(function (item, index, arr) {
        console.log(item);
    })
  1. 重排序方法
    reverse():反转数组项的顺序,会改变原数组
    sort() :会改变原数组,默认按升序排列数组项,接收一个比较函数,比较函数接收两个参数,若第一个参数应该位于第二个参数之前,则返回一个负数;相等返回0;否则返回正数
 var arr = [1, 2, 3];
    var arr1 = arr.reverse();
    console.log(arr, arr1);
    arr.sort(function (value1, value2) {
        if (value1 > value2) {
            return 1;
        } else if (value1 < value2) {
            return -1;
        } else {
            return 0;
        }
    })
    console.log(arr);
  1. 归并方法
    迭代数组中的所有项,构建一个最终返回的值。
    接收两个参数,在每一项上调用的函数,作为归并基础的初始值(可选)。
    调用的函数接收四个参数(前一个值,当前值,项的索引,数组对象)。
    函数返回的任何值都会第一个参数自动传给下一项,第一次迭代发生在数组的第二项,因此第一个参数是数组的第一项,第二个参数是数组的第二项。
    reduce():从头开始遍历
    reduceRight():从未开始向前遍历
    var arr = [1, 2, 3, 4, 5];
    arr.reduce(function (pre, cur, index, arr) {
        return pre + cur;
    })    //15
JS数组常用方法有很多,以下是其中的一些常用方法: 1. Array.push():向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。 2. Array.pop():删除数组的最后一个元素,并返回删除的元素。原数组改变。 3. Array.shift():删除数组的第一个元素,并返回删除的元素。原数组改变。 4. Array.unshift():向数组的开头添加一个或多个元素,并返回新的数组长度。原数组改变。 5. Array.reverse():反转数组的顺序。原数组改变。 6. Array.sort():对数组进行排序。原数组改变。 7. Array.splice():从数组中删除元素,并可以在指定位置插入新的元素。原数组改变。 8. Array.concat():合并两个或多个数组,生成一个新的数组。原数组不变。 9. Array.join():将数组的所有元素连接成一个字符串。原数组不变。 10. Array.indexOf():返回指定元素在数组中的索引,如果不存在则返回-1。 11. Array.slice():从指定位置截取数组的片段并返回新的数组。原数组不变。 12. Array.forEach():对数组的每个元素执行指定的操作。 13. Array.map():对数组的每个元素执行指定的操作,并返回一个新的数组。 14. Array.filter():根据指定的条件过滤数组的元素,并返回一个新的数组。 15. Array.every():检测数组的所有元素是否都满足指定的条件。 16. Array.some():检测数组的是否存在满足指定条件的元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值