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 相关文章推荐
使用JS 清空File控件的路径值
Jul 08 Javascript
js Date概念详细介绍
Nov 22 Javascript
js中判断对象是否为空的三种实现方法
Dec 23 Javascript
JavaScript两种跨域技术全面介绍
Apr 16 Javascript
javascript ajax的5种状态介绍
Aug 18 Javascript
jQuery实现给页面换肤的方法
May 30 Javascript
jquery实现邮箱自动填充提示功能
Nov 17 Javascript
基于jquery实现图片相关操作(重绘、获取尺寸、调整大小、缩放)
Dec 25 Javascript
使用postMesssage()实现跨域iframe页面间的信息传递方法
Mar 29 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
Aug 25 Javascript
使用jQuery实现两个div中按钮互换位置的实例代码
Sep 21 jQuery
Node.js中环境变量process.env的一些事详解
Oct 26 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
PHP中,文件上传
2006/12/06 PHP
php session应用实例 登录验证
2009/03/16 PHP
php跨域cookie共享使用方法
2014/02/20 PHP
19个超实用的PHP代码片段
2014/03/14 PHP
php定界符
2014/06/19 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
php在数组中查找指定值的方法
2015/03/17 PHP
php+flash+jQuery多图片上传源码分享
2020/07/27 PHP
JQuery select标签操作代码段
2010/05/16 Javascript
jquery中的 $("#jb51")与document.getElementById("jb51") 的区别
2011/07/26 Javascript
由JavaScript中call()方法引发的对面向对象继承机制call的思考
2011/09/12 Javascript
javascript检测浏览器flash版本的实现代码
2011/12/06 Javascript
jquery click([data],fn)使用方法实例介绍
2013/07/08 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
js实现把图片的绝对路径转为base64字符串、blob对象再上传
2016/12/29 Javascript
layui文件上传实现代码
2017/05/20 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
vue项目部署到nginx/tomcat服务器的实现
2019/08/26 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
2019/09/20 Javascript
解决Layui数据表格的宽高问题
2019/09/28 Javascript
JS函数本身的作用域实例分析
2020/03/16 Javascript
[49:20]VG vs TNC Supermajor小组赛B组败者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
Python通过递归遍历出集合中所有元素的方法
2015/02/25 Python
简单了解Python下用于监视文件系统的pyinotify包
2015/11/13 Python
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
python3+PyQt5使用数据库窗口视图
2018/04/24 Python
python机器学习实现决策树
2019/11/11 Python
Python插入Elasticsearch操作方法解析
2020/01/19 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
python不同系统中打开方法
2020/06/23 Python
英国户外装备商店:Ultimate Outdoors
2019/05/07 全球购物
自荐信怎么写好
2013/11/11 职场文书
优秀学生事迹材料
2014/02/08 职场文书
气象学专业个人求职信
2014/03/15 职场文书
大学生就业求职信
2014/06/12 职场文书
导师工作推荐信
2015/03/27 职场文书