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 相关文章推荐
ECMAScript 创建自己的js类库
Nov 22 Javascript
解析offsetHeight,clientHeight,scrollHeight之间的区别
Nov 20 Javascript
跟我学Node.js(四)---Node.js的模块载入方式与机制
Jun 04 Javascript
基于jquery ui的alert,confirm方案(支持换肤)
Apr 03 Javascript
浅谈javascript构造函数与实例化对象
Jun 22 Javascript
详解Angularjs filter过滤器
Feb 06 Javascript
Vue数据驱动模拟实现2
Jan 11 Javascript
详解Vue 事件驱动和依赖追踪
Apr 22 Javascript
Javascript 一些需要注意的细节(必看篇)
Jul 08 Javascript
ES6中Class类的静态方法实例小结
Oct 28 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
Apr 26 jQuery
vue滚动tab跟随切换效果
Jun 29 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获取MAC地址的函数代码
2011/09/11 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题
2010/08/12 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
IE6下javasc#ipt:void(0) 无效的解决方法
2013/12/23 Javascript
js验证输入是否为手机号码或电话号码示例
2013/12/30 Javascript
jquery获取当前元素索引值用法实例
2015/06/10 Javascript
如何根据百度地图计算出两地之间的驾驶距离(两种语言js和C#)
2015/10/29 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
微信小程序 图片等比例缩放(图片自适应屏幕)
2016/11/16 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
2016/12/14 Javascript
bootstrap导航、选项卡实现代码
2016/12/28 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
node.js文件上传重命名以及移动位置的示例代码
2018/01/19 Javascript
JS匿名函数内部this指向问题详析
2019/05/10 Javascript
微信小程序云开发修改云数据库中的数据方法
2019/05/18 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
python的urllib模块显示下载进度示例
2014/01/17 Python
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
python3中的md5加密实例
2018/05/29 Python
对numpy中shape的深入理解
2018/06/15 Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
2019/09/06 Python
Tensorflow实现部分参数梯度更新操作
2020/01/23 Python
Python实现七个基本算法的实例代码
2020/10/08 Python
高档奢华时装在线目的地:FORWARD by elyse walker
2017/10/16 全球购物
莫斯科绝对前卫最秘密的商店:SVMoscow
2017/10/23 全球购物
同步和异步有何异同,在什么情况下分别使用他们?举例说明
2014/02/27 面试题
UNIX命令速查表
2012/03/10 面试题
医院护理人员的自我评价分享
2013/10/04 职场文书
会计系毕业生求职信
2014/05/28 职场文书
2014单位领导班子四风对照检查材料思想汇报
2014/09/25 职场文书
行政文员岗位职责
2015/02/04 职场文书
python自然语言处理之字典树知识总结
2021/04/25 Python
Java日常练习题,每天进步一点点(38)
2021/07/26 Java/Android
HttpClient实现文件上传功能
2022/08/14 Java/Android