JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)


Posted in Javascript onMay 20, 2016

POP 删除最后一项

删除最后一项,并返回删除元素的值;如果数组为空则返回undefine

var a = [1,2,3,4,5];
a.pop();//a:[1, 2, 3, 4]
a.pop();//a:[1, 2, 3]
a.pop();//a:[1, 2]

shift 删除第一项

删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefine

var a = [1,2,3,4,5]; 
a.shift(); //a:[2,3,4,5]
a.shift(); //a:[3, 4, 5]

push 增加到最后

并返回新数组长度;

var a = [1,2,3,4,5]; 
a.push(6);//[1, 2, 3, 4, 5, 6]
aa.push('xx');//[1, 2, 3, 4, 5, 6, "xx"] 返回长度7
a.push('yy');//[1, 2, 3, 4, 5, 6, "xx", "yy"] 返回长度8

unshift增加到最前

并返回新数组长度;

var a = [1,2,3,4,5]; 
a.unshift();//[1, 2, 3, 4, 5]
a.unshift("cc");//["cc", 1, 2, 3, 4, 5] 返回长度6
a.unshift("aaa");//["aaa", "cc", 1, 2, 3, 4, 5] 返回长度7

reverse 数组翻转

并返回翻转后的原数组,原数组翻转了

var a = [1,2,3,4,5]; 
a.reverse()//a:[5, 4, 3, 2, 1] 返回[5, 4, 3, 2, 1]

join数组转成字符串

并返回字符串,原数组木变

var a = [1,2,3,4,5]; 
var b=a.join('||');//b:"1||2||3||4||5" a:[1,2,3,4,5]

indexOf数组元素索引

并返回元素索引,不存在返回-1,索引从0开始

var a = ['a','b','c','d','e']; 
a.indexOf('a');//0
a.indexOf(a);//-1
a.indexOf('f');//-1
a.indexOf('e');//4

slice截取(切片)数组 得到截取的数组

返回从原数组中指定开始索引(包含)到结束索引(不包含)之间的项组成的新数组,原数组木变 ,索引从0开始

var a = ['a','b','c','d','e']; 
a.slice(1,3);//["b", "c"] a:['a','b','c','d','e']
a.slice(0,4);//["a", "b", "c", "d"]
a.slice(3,4);//["d"]

splice剪接数组 原数组变化 可以实现shift前删除,pop后删除,unshift前增加,同push后增加一样的效果

返回剪接的元素数组,原数组变化 ,索引从0开始

/*参数是2个*/
//第一参数是索引(从0开始),第二是长度
var a = ['a','b','c','d','e']; 
a.splice(0,2);//["a", "b"] a:["c", "d", "e"]
a.splice(0,2);//["c", "d"] a:["e"]
var a = ['a','b','c','d','e']; 
a.splice(0,1);//["a"] a:["b", "c", "d", "e"] 同shift前删除
var a = ['a','b','c','d','e']
a.splice(a.length-1,1)l//["e"] a:["a", "b", "c", "d"] 同pop前删除
/*参数大于2个*/
//splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 
var a = ['a','b','c','d','e']; 
a.splice(3,1,10,21,238,99);//["d"] a:["a", "b", "c", 10, 21, 238, 99, "e"]
var a = ['a','b','c','d','e']; 
a.splice(a.length,100000000,88)//返回 [] 从最后元素后面的元素,截取长度任意个,肯定是空 a:["a", "b", "c", "d", "e", 88] 同push后增加
var a = ['a','b','c','d','e']; 
a.splice(a.length,0,88)//返回 [] 从最后元素后面的元素,截取长度任意个,肯定是空 a:["a", "b", "c", "d", "e", 88] 同push后增加
var a = ['a','b','c','d','e'];
a.splice(0,0,88,99)//返回 [] 从第一个元素,截取长度0个 肯定是空 a:[88, 99, "a", "b", "c", "d", "e"] 同unshift前增加

concat数组合并

返回合并后的新数组,原数组木变

var a = ['a','b','c','d','e']; 
a.concat([88,99]);//["a", "b", "c", "d", "e", 88, 99] a:["a", "b", "c", "d", "e"]
var b= [9999,10000]
a.concat(b);// ["a", "b", "c", "d", "e", 9999, 10000] a:["a", "b", "c", "d", "e"]

以上所述是小编给大家介绍的JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
May 07 Javascript
为JavaScript添加重载函数的辅助方法
Jul 04 Javascript
了不起的node.js读书笔记之mongodb数据库交互
Dec 22 Javascript
jquery实现键盘左右翻页特效
Apr 30 Javascript
JavaScript函数学习总结以及相关的编程习惯指南
Nov 16 Javascript
React Router基础使用
Jan 17 Javascript
webpack2.0配置postcss-loader的方法
Aug 17 Javascript
Vue项目组件化工程开发实践方案
Jan 09 Javascript
关于express与koa的使用对比详解
Jan 25 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
Feb 23 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
Nov 30 Javascript
基于Ionic3实现选项卡切换并重新加载echarts
Sep 24 Javascript
AngularJS中的指令全面解析(必看)
May 20 #Javascript
浅析angularJS中的ui-router和ng-grid模块
May 20 #Javascript
javascript的理解及经典案例分析
May 20 #Javascript
JS中对象与字符串的互相转换详解
May 20 #Javascript
JS 对象(Object)和字符串(String)互转方法
May 20 #Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
May 20 #Javascript
浅析JavaScript Array和string的转换(推荐)
May 20 #Javascript
You might like
SONY ICF-SW7600的电路分析
2021/03/02 无线电
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
2013/06/25 PHP
Zend Framework入门教程之Zend_Session会话操作详解
2016/12/08 PHP
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
jquery简单实现图片切换效果的方法
2015/05/12 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
微信小程序 loading 详解及实例代码
2016/11/09 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
JS实现移动端实时监听输入框变化的实例代码
2017/04/12 Javascript
Bootstrap Paginator+PageHelper实现分页效果
2018/12/29 Javascript
JavaScript Window窗口对象属性和使用方法
2020/01/19 Javascript
[07:03]显微镜下的DOTA2第九期——430圣堂刺客杀戮秀
2014/06/20 DOTA
跟老齐学Python之有容乃大的list(2)
2014/09/15 Python
Python使用metaclass实现Singleton模式的方法
2015/05/05 Python
教大家使用Python SqlAlchemy
2016/02/12 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
python实现简易云音乐播放器
2018/01/04 Python
TensorFlow如何实现反向传播
2018/02/06 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
2018/10/11 Python
python 美化输出信息的实例
2018/10/15 Python
Django密码系统实现过程详解
2019/07/19 Python
Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
2019/07/31 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
英国买鞋网站:Charles Clinkard
2019/11/14 全球购物
测绘工程系学生的自我评价
2013/11/30 职场文书
单位刻章介绍信范文
2014/01/11 职场文书
技术岗位竞聘演讲稿
2014/05/16 职场文书
党建工作经验交流材料
2014/05/25 职场文书
中学生旷课检讨书模板
2014/10/08 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
承诺书模板大全
2015/05/04 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书
SQL SERVER存储过程用法详解
2022/02/24 SQL Server