JavaScript的数据中可通过splice/slice在指定位置添加或删除元素。另外还有slice、delete等方法实现。
splice简介
splice方法向/从数组中添加/删除项目,然后返回被删除的项目。 该方法会改变原始数组。
arrayObject.splice(index, howmany, item1, ..., itemX)
参数 描述
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。
使用示例
删除第3个元素
var arr = [1, 2, 3, 4, 5]; arr.splice(2, 1); console.log(arr) //[1, 2, 4, 5]
删除开始的3个元素
var arr = [1, 2, 3, 4, 5]; arr.splice(0, 3); console.log(arr); //[4, 5]
在第2个元素后,添加新数字 9
var arr = [1, 2, 3, 4, 5]; arr.splice(2, 0, 9); console.log(arr) //[1, 2, 9, 3, 4, 5]
Array.insert 添加
借助splice可以在array上面添加一个原生的insert方法,直接操作数组:
Array.prototype.insert = function(index) { index = Math.min(index, this.length); arguments.length > 1 && this.splice.apply(this, [index, 0].concat([].pop.call(arguments))) && this.insert.apply(this, arguments); return this; };
使用示例
var arr = [1, 2, 3, 4, 5]; arr.insert(2, -1, -2, -3); console.log(arr); // [1, 2, -1, -2, -3, 3, 4, 5]
Array.remove 删除
也可以用slice在array上面添加一个原生的remove方法
Array.prototype.remove = function(from, to) { var rest = this.slice((to || from) + 1 || this.length); this.length = from < 0 "htmlcode">var arr = [1, 2, 3, 4, 5]; arr.remove(2); //第3个元素索引是2 console.log(arr); //[1, 2, 4, 5]这里使用了slice方法,简介如下:
slice简介
slice() 方法可从已有的数组中返回选定的元素。 返回一个新数组,不修改原有数组。
arrayObject.slice(start,end)参数描述
start 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】