(最全代码示例)js中常见的数组操作方法有哪些,哪些会修改原数组

JavaScript中常见的数组操作方法有:push、pop、shift、unshift、concat、slice、splice、sort、reverse、jointoString、indexOf、lastIndexOf、forEach、map、filter、reduce、reduceRight
结论:

  • 会直接修改原始数组有:增2个、删2个、合并、排序2个。
  • 但是 slice、join 不会修改原数组、以及 各种遍历、查询、累计 也都不会

以下是这些方法的简要说明,以及其中会直接修改原数组的方法的代码示例:

  1. push:将一个或多个元素添加到数组的末尾,并返回新数组的长度。
    示例代码:

    let arr = [1, 2, 3];
    arr.push(4); // 返回值是剩余的数组长度
    console.log(arr); // [1, 2, 3, 4]
    
  2. pop:删除数组的最后一个元素,并返回该元素的值。
    示例代码:

    let arr = [1, 2, 3];
    let lastElement = arr.pop(); // 返回值是 末尾元素
    console.log(arr); // [1, 2]
    console.log(lastElement); // 3
    
  3. shift:删除数组的第一个元素,并返回该元素的值。
    示例代码:

    let arr = [1, 2, 3];
    let firstElement = arr.shift(); //  返回值是 第一个元素
    console.log(arr); // [2, 3]
    console.log(firstElement); // 1
    
  4. unshift:将一个或多个元素添加到数组的开头,并返回新数组的长度。
    示例代码:

    let arr = [1, 2, 3];
    arr.unshift(0); // 返回值是剩余的数组长度
    console.log(arr); // [0, 1, 2, 3]
    
  5. concat:将两个或多个数组合并成一个新数组,并返回新数组。
    示例代码:

    let arr1 = [1, 2];
    let arr2 = [3, 4];
    let newArr = arr1.concat(arr2);
    console.log(newArr); // [1, 2, 3, 4]
    
  6. slice:对数组中指定区间进行copy,不修改原数组,并返回新数组。
    示例代码:

    let arr = [1, 2, 3, 4, 5];
    let newArr = arr.slice(1, 3);
    console.log(newArr); // [2, 3]
    console.log(arr); // [1, 2, 3, 4, 5] 不变
    
  7. splice:向/从数组中添加/删除项目,然后返回被删除的元素。
    示例代码:

    let arr = [1, 2, 3, 4, 5];
    let removedElements = arr.splice(1, 2);
    console.log(arr); // [1, 4, 5]
    console.log(removedElements); // [2, 3]
    
  8. sort:对数组元素进行排序,并返回排序后的数组。注意,它会直接修改原数组。
    示例代码:

    let arr = [3, 2, 1];
    arr.sort();
    console.log(arr); // [1, 2, 3]
    
  9. reverse:颠倒数组中元素的顺序,并返回颠倒后的数组。注意,它会直接修改原数组。
    示例代码:

    let arr = [1, 2, 3];
    arr.reverse();
    console.log(arr); // [3, 2, 1]
    
  10. join:将数组中所有元素转换为字符串,并连接起来,返回一个新字符串。默认以逗号分隔元素。
    示例代码:

    let arr = [1, 2, 3];
    let str = arr.join();
    console.log(str); // "1,2,3"
    console.log(arr); // [1, 2, 3] 没改变
    

… 等等

如果觉得不错,不妨点个赞吧❤️

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值