首页 > 其他分享 >js 数组的splice

js 数组的splice

时间:2023-01-06 15:47:56浏览次数:40  
标签:arr console splice res js 数组 var

splice():删除、插入和替换

1、删除:指定 2 个参数:要删除的第一项的位置和要删除的项数。

书写格式:arr.splice( 0 , 2 )

2、插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。

书写格式:arr.splice( 2,0,4,6 )

3、替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。

书写格式:arr.splice( 1,1,2,3 )

例子:

var arr = [1,3,5,7,9,11];
 var arrRemoved = arr.splice(0,2);
 console.log(arr); //[5, 7, 9, 11]
 console.log(arrRemoved); //[1, 3] 
var arrRemoved2 = arr.splice(2,0,4,6);
 console.log(arr); // [5, 7, 4, 6, 9, 11]
 console.log(arrRemoved2); // []
 var arrRemoved3 = arr.splice(1,1,2,4); 
console.log(arr); // [5, 2, 4, 4, 6, 9, 11]
 console.log(arrRemoved3); //[7]

 此外介绍用了两个数组方法,即pop()和unshift(),用splice实现

第一个:pop(),取出数组中的最后一项。

Array.prototype.pop2 = function () {
    //数组中的最后一项
    var res = this[this.length - 1];
    //原数组去掉数组中的最后一项
    this.splice(this.length - 1, 1);
    return res
}


 
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
  var res = arr.pop2();
  alert(res)
  //9
  alert(arr)
  //[1,2,3,4,5,6,7,8]

  

第二个:unshift,取出数组中的第一项。

Array.prototype.unshift2 = function () {
    //数组中的第一项
    var res = this[0];
    //原数组去掉第一项
    this.splice(0, 1);
    return res
}



  

 var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
  var res = arr.unshift2();
  alert(res)
  //1
  alert(arr)
  //[2,3,4,5,6,7,8,9]

  

 

标签:arr,console,splice,res,js,数组,var
From: https://www.cnblogs.com/xiaoeshuang/p/17030626.html

相关文章

  • 第3章:数组
    1、数组的概述数组(Array):是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。数组的相关概念:    数组名:数组的名称......
  • 使用ExcelJS处理Excel
    官方中文文档在浏览器环境下,用Excel.js读取excel文件使用ExcelJS的原因因为SheetJS读取样式的那一部分是收费的(具体原因是因为有人花钱找他们开发的,再免费对花钱的人......
  • JS精粹--匿名函数与自执行匿名函数
    1.函数也是一种类型要理解匿名函数,首先需要理解函数也是一种类型。所以函数可以赋值给变量,如下://将数字类型值赋给变量varnum=1;//将......
  • three.js场景地形导出到物理引擎
    太长不看版遍历场景地形里的Mesh,从geometry里抽取index和position,通过这两个数组构建物理引擎里的Trimesh。 背景最近在试制网页MMORPG,内核用最顺手的three.js,资产使......
  • 更改json节点key
    json节点key更改,给朋友写的小tool,顺便记录一下/***需要转义的key对象*原key:新key*/constjsonKeysTo={'a':'new_a','b':'new_b','c>0......
  • 解决react typescript项目中引入js库项目打包报错问题
    描述在reacttypescript项目中,在打包的过程中会报错抛出couldnotfindadeclarationfileformodule的错误,报错内容如图所示原因JS库无法在TS中正常的加载,需要修改......
  • .Net Core Mvc控制器返回JsonResult 序列化数据循环依赖问题
     开始找的解决方案发现并行不通services.AddControllers().AddNewtonsoftJson((options)=>{//忽略循环引用options.Ser......
  • ExtJS - UI组件 - TabPanel
    ExtJS教程汇总:https://www.cnblogs.com/cqpanda/p/16328016.html转载请注明出处:https://www.cnblogs.com/cqpanda/p/16587500.html更新记录2023年1月2日从笔记迁移到......
  • JS异步代码
    Promiseconstpromise=newPromise((resolve,reject)=>{//立即执行//成功返回resolve(),//失败返回reject()})promise.then(()=>{console.log......
  • 稀疏数组
    用途:将普通数组转为稀疏数组来达到节省空间的目的介绍:代码: importcn.hutool.core.util.ObjectUtil;importorg.junit.Test;publicclassSparseArrayTest{......