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 相关文章推荐
javascript代码加载优化方法
Jan 30 Javascript
jquery无缝向上滚动实现代码
Mar 29 Javascript
js函数中onmousedown和onclick的区别和联系探讨
May 19 Javascript
jquery $.fn $.fx是什么意思有什么用
Nov 04 Javascript
javascript中不等于的代码是什么怎么写
Dec 29 Javascript
js函数在frame中的相互调用详解
Mar 03 Javascript
jquery 自定义容器下雨效果可将下雨图标改为其他
Apr 23 Javascript
js判断手机号运营商的方法
Oct 23 Javascript
微信小程序 商城开发(ecshop )简单实例
Apr 07 Javascript
Three.js加载外部模型的教程详解
Nov 10 Javascript
vue2.0 路由不显示router-view的解决方法
Mar 06 Javascript
Node.js Event Loop各阶段讲解
Mar 08 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面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
php 目录遍历、删除 函数的使用介绍
2013/04/28 PHP
PHP filesize函数用法浅析
2019/02/15 PHP
JavaScript DOM 学习第九章 选取范围的介绍
2010/02/19 Javascript
利用javascript数组长度循环数组内所有元素
2013/12/27 Javascript
node.js中的fs.createWriteStream方法使用说明
2014/12/17 Javascript
jQuery实现360°全景拖动展示
2015/03/18 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
详解JS正则replace的使用方法
2016/03/06 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
基于Bootstrap漂亮简洁的CSS3价格表(附源码下载)
2017/02/28 Javascript
webpack external模块的具体使用
2018/03/10 Javascript
vue弹窗插件实战代码
2018/09/08 Javascript
详解在React项目中安装并使用Less(用法总结)
2019/03/18 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
python操作MySQL数据库具体方法
2013/10/28 Python
Golang与python线程详解及简单实例
2017/04/27 Python
python matlibplot绘制3D图形
2018/07/02 Python
解决每次打开pycharm直接进入项目的问题
2018/10/28 Python
Python字符串逆序的实现方法【一题多解】
2019/02/18 Python
详解python itertools功能
2020/02/07 Python
jupyter notebook oepncv 显示一张图像的实现
2020/04/24 Python
opencv-python的RGB与BGR互转方式
2020/06/02 Python
利用keras使用神经网络预测销量操作
2020/07/07 Python
tensorflow与numpy的版本兼容性问题的解决
2021/01/08 Python
CSS3五个技巧给你的网站带来出色的效果
2009/04/02 HTML / CSS
CSS3实现多背景模拟动态边框的效果
2016/11/08 HTML / CSS
用纯CSS3实现网页中常见的小箭头
2017/10/16 HTML / CSS
用html5的canvas画布绘制贝塞尔曲线完整代码
2013/08/14 HTML / CSS
工程测量与监理专业应届生求职信
2013/11/27 职场文书
电子工程专业毕业生求职信
2014/03/14 职场文书
政风行风自查自纠报告
2014/10/21 职场文书
2016年学校“3.12”植树节活动总结
2016/03/16 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
MySQL数据库表约束讲解
2022/06/21 MySQL
Spring Boot实现文件上传下载
2022/08/14 Java/Android