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 相关文章推荐
IE不出现Flash激活框的小发现的js实现方法
Sep 07 Javascript
jquery checkbox,radio是否选中的判断代码
Mar 20 Javascript
jquery autocomplete自动完成插件的的使用方法
Aug 07 Javascript
JS网页播放声音实现代码兼容各种浏览器
Sep 22 Javascript
javascript解析json实例详解
Nov 05 Javascript
AngularJS实现标签页的两种方式
Sep 05 Javascript
jQuery插件jqGrid动态获取列和列字段的方法
Mar 03 Javascript
lhgcalendar时间插件限制只能选择三个月的实现方法
Jul 03 Javascript
Bootstrap框架建立树形菜单(Tree)的实例代码
Oct 30 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
May 12 Javascript
JS this关键字在ajax中使用出现问题解决方案
Jul 17 Javascript
在vue中使用inheritAttrs实现组件的扩展性介绍
Dec 07 Vue.js
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多功能图片处理类分享(php图片缩放类)
2014/03/14 PHP
实例介绍PHP的Reflection反射机制
2014/08/05 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
2014/11/19 PHP
php合并数组并保留键值的实现方法
2018/03/12 PHP
php 可变函数使用小结
2018/06/12 PHP
js模拟点击事件实现代码
2012/11/06 Javascript
jquery日历控件实现方法分享
2014/03/07 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
js拆分字符串并将分割的数据放到数组中的方法
2015/05/06 Javascript
纯js模拟div层弹性运动的方法
2015/07/27 Javascript
freemarker判断对象是否为空的方法
2015/08/13 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
JavaScript中的return语句简单介绍
2015/12/07 Javascript
JavaScript-html标题滚动效果的简单实现
2016/09/08 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
Vue开发中整合axios的文件整理
2017/04/29 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
Vue.js递归组件实现组织架构树和选人功能案例分析
2019/07/03 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
js中实现继承的五种方法
2021/01/25 Javascript
通过滑动翻页效果实现和移动端click事件问题
2021/01/26 Javascript
Python语言描述随机梯度下降法
2018/01/04 Python
利用anaconda作为python的依赖库管理方法
2019/08/13 Python
树莓派升级python的具体步骤
2020/07/05 Python
python实现三壶谜题的示例详解
2020/11/02 Python
python动态规划算法实例详解
2020/11/22 Python
TensorFlow的环境配置与安装方法
2021/02/20 Python
执行力心得体会
2013/12/31 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
项目建议书
2015/02/04 职场文书
物业客服专员岗位职责
2015/04/07 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书
工厂无线对讲系统解决方案
2022/02/18 无线电
经典《舰娘》游改全新动画预告 预定11月开播
2022/04/01 日漫