js Array操作的最简短最容易理解方法


Posted in Javascript onDecember 09, 2013

Array 的方法
1 Array.join(): 把所有元素用符号连结成string返回, 如果元素不是基本类型, 先调用toString.
它对应string.split();
arr = [1,2,true,3,4,5];
(arr.join('-') == '1-2-true-3-4-5';

2 Array.reverse(): 逆序排列数组
arr = [1,2,true,3,4,5];
arr.reverse();// arr == [5,4,3,true,2,1];

3 Array.sort(): 排序,可以传递一个排序函数作参数
arr.sort(function(a,b){
    return a-b;
});

4 Array.concat(): 拼接函数,
在末尾拼接上新元素,返回拼接后的array,但是不改变原array;参数可以是一个元素,多个元素,一个数组,
如果是一个元素,或多个元素,直接把这些元素加到末尾,如果是一个数组,则把数组各个元素拿出来拼接到尾部。
a = [1,2,3];
a.concat(4,5)// return [1,2,3,4,5]
a.concat([4,5])// return [1,2,3,4,5]
a.concat([4,5],[6,7]);//return [1,2,3,4,5,6,7]
a.concat([4,[5,6]])//return [1,2,3,4,[5,6]]//注意

5 Array.slice(startPos, endPos): 取子字符串函数(原array保持不变)
从startPos开始到endPos结束但不包括endPos上的元素
如果没有endPos,则取到尾
如果pos为负, 则倒着数
a = [1,2,3,4,5];
a.slice(0,3)// return [1,2,3]
a.slice(3)//return [4,5]
a.slice(1,-1)//return [2,3,4]//从第一个开始取,取到倒数第1个,但不包括倒数第1个
a.slice(1,-2);//return [2,3]//从第一个开始取,取到倒数第2个,但不包括倒数第2个

6 Array.splice(startPos, length, [added1, added2...]) 随机存取函数
可以随机删除一个(些)元素,也可以加上一些元素,
如果只有两个参数,则从array中删除从startPos开始总共length个元素
如果有两个以上参数,则从array中删除从startPos开始总共length个元素,再从刚才删除的位置添加上后面的元素
如果被添加的元素是一个数组则把这个数组作为一个元素(与concat差别)
a = [1,2,3,4,5];
a.splice(1,2)//return [2,3]; a==[1,4,5]
a.splice(1,2,6,7,8)//return [2,3]; a==[1,6,7,8,4,5]
a.splice(1,2,[6,7,8]);//return [2,3]; a==[1,[6,7,8],4,5]

7 Array.push() 和 Array.pop();
都是操作最后一个元素,push是添加,pop是删除最后一个元素并返回该元素

8 Array.unshift() 和 Array.shift()
都是操作第一个元素,unshift是添加,shift是删除第一个元素并返回该元素

合计起来
这些方法会改变原array:reverse, sort, splice, push, pop, unshift, shift
这些方法不会改变原array:join, concat, splice

Javascript 相关文章推荐
Json对象替换字符串占位符实现代码
Nov 17 Javascript
jquery 操作DOM案例代码分享
Apr 05 Javascript
jquery获取iframe中的dom对象(两种方法)
Jul 02 Javascript
jquery阻止后续事件只执行第一个事件
Jul 24 Javascript
JS 动态判断PC和手机浏览器实现代码
Sep 21 Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
Dec 27 Javascript
angularjs http与后台交互的实现示例
Dec 21 Javascript
javascript的this关键字详解
May 20 Javascript
JavaScript的Proxy可以做哪些有意思的事儿
Jun 15 Javascript
微信小程序 弹窗输入组件的实现解析
Aug 12 Javascript
vue router 传参获取不到的解决方式
Nov 13 Javascript
js 函数性能比较方法
Aug 24 Javascript
javascript放大镜效果的简单实现
Dec 09 #Javascript
javascript贪吃蛇完整版(源码)
Dec 09 #Javascript
关于js内存泄露的一个好例子
Dec 09 #Javascript
JS连连看源码完美注释版(推荐)
Dec 09 #Javascript
解析Javascript中难以理解的11个问题
Dec 09 #Javascript
深入理解Javascript作用域与变量提升
Dec 09 #Javascript
Javascript全局变量var与不var的区别深入解析
Dec 09 #Javascript
You might like
通过ODBC连接的SQL SERVER实例
2006/10/09 PHP
修改apache配置文件去除thinkphp url中的index.php
2014/01/17 PHP
PHP中定义数组常量(array常量)的方法
2014/11/17 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
PHP API接口必备之输出json格式数据示例代码
2017/06/27 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
popdiv
2006/07/14 Javascript
Javascript操纵Cookie实现购物车程序
2007/02/15 Javascript
js正确获取元素样式详解
2009/08/07 Javascript
jquery创建并行对象或者合并对象的实现代码
2012/10/10 Javascript
理解Javascript闭包
2013/11/01 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
JQuery插件ajaxfileupload.js异步上传文件实例
2015/05/19 Javascript
jQuery中extend()和fn.extend()方法详解
2015/06/03 Javascript
JavaScript记录光标在编辑器中位置的实现方法
2016/04/22 Javascript
Javascript之Date对象详解
2016/06/07 Javascript
JS验证字符串功能
2017/02/22 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
2017/03/21 jQuery
使用mpvue搭建一个初始小程序及项目配置方法
2018/12/03 Javascript
python Pandas 读取txt表格的实例
2018/04/29 Python
Python实现购物评论文本情感分析操作【基于中文文本挖掘库snownlp】
2018/08/07 Python
python绘制中国大陆人口热力图
2018/11/07 Python
在django admin中添加自定义视图的例子
2019/07/26 Python
关于Pytorch MaxUnpool2d中size操作方式
2020/01/03 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
Python实现手势识别
2020/10/21 Python
Python字典dict常用方法函数实例
2020/11/09 Python
检测浏览器是否支持html5视频的代码
2013/03/28 HTML / CSS
印度最大的酒店品牌网络:OYO Rooms
2016/07/24 全球购物
英国50岁以上人群的交友网站:Ourtime
2018/03/28 全球购物
Ralph Lauren意大利官方网站:时尚界最负盛名的品牌之一
2018/10/18 全球购物
2014年驻村干部工作总结
2014/11/17 职场文书
党员年度个人总结
2015/02/14 职场文书
2015年超市工作总结范文
2015/05/26 职场文书
vue使用Google Recaptcha验证的实现示例
2021/08/23 Vue.js
js面向对象编程OOP及函数式编程FP区别
2022/07/07 Javascript