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 相关文章推荐
火狐浏览器(firefox)下获得Event对象以及keyCode
Nov 13 Javascript
Wordpress ThickBox 点击图片显示下一张图的修改方法
Dec 11 Javascript
JavaScript执行顺序详细介绍
Dec 04 Javascript
js使用for循环查询数组中是否存在某个值
Aug 12 Javascript
jQuery中clone()方法用法实例
Jan 16 Javascript
jQuery实现统计输入文字个数的方法
Mar 11 Javascript
js模拟淘宝网的多级选择菜单实现方法
Aug 18 Javascript
AngularJS 使用$sce控制代码安全检查
Jan 05 Javascript
封装获取dom元素的简单实例
Jul 08 Javascript
jquery遍历标签中自定义的属性方法
Sep 17 Javascript
vue-router传递参数的几种方式实例详解
Nov 13 Javascript
selenium+java中用js来完成日期的修改
Oct 31 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
PHP抓取及分析网页的方法详解
2016/04/26 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
PHP如何获取Cookie并实现模拟登录
2020/07/16 PHP
Jquery升级新版本后选择器的语法问题
2010/06/02 Javascript
jquery的键盘事件修改代码
2011/02/24 Javascript
浅析JS刷新框架中的其他页面 && JS刷新窗口方法汇总
2013/07/08 Javascript
jquery利用命名空间移除绑定事件的方法
2015/03/11 Javascript
详解JavaScript中的blink()方法的使用
2015/06/08 Javascript
JavaScript类型系统之布尔Boolean类型详解
2016/06/26 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(上)
2017/04/21 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
JS调用安卓手机摄像头扫描二维码
2018/10/16 Javascript
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
解决axios post 后端无法接收数据的问题
2019/10/29 Javascript
JS实现简易图片自动轮播
2020/10/16 Javascript
Python三元运算实现方法
2015/01/12 Python
python3 与python2 异常处理的区别与联系
2016/06/19 Python
python使用opencv读取图片的实例
2017/08/17 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
2017/09/28 Python
利用Hyperic调用Python实现进程守护
2018/01/02 Python
python抓取文件夹的所有文件
2018/02/27 Python
浅谈pandas中shift和diff函数关系
2018/04/08 Python
Python比较2个时间大小的实现方法
2018/04/10 Python
python plotly绘制直方图实例详解
2019/07/22 Python
Python:二维列表下标互换方式(矩阵转置)
2019/12/02 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
Python实现代码块儿折叠
2020/04/15 Python
Python中SQLite如何使用
2020/05/27 Python
ProBikeKit德国:在线公路自行车专家
2018/06/03 全球购物
美国翻新电子产品商店:The Store
2019/10/08 全球购物
车间统计员岗位职责
2014/01/05 职场文书
超市理货员岗位职责
2014/07/04 职场文书
四风查摆问题自查报告
2014/10/10 职场文书
分析JVM源码之Thread.interrupt系统级别线程打断
2021/06/29 Java/Android