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 相关文章推荐
JavaScript Array Flatten 与递归使用介绍
Oct 30 Javascript
javascript获得服务器端控件的ID的实现代码
Dec 28 Javascript
模拟电子签章盖章效果的jQuery插件源码
Jun 24 Javascript
JS画线(实例代码)
Nov 20 Javascript
JS保留两位小数 四舍五入函数的小例子
Nov 20 Javascript
jQuery操作JSON的CRUD用法实例
Feb 25 Javascript
在JavaScript中用getMinutes()方法返回指定的分时刻
Jun 10 Javascript
JavaScript自学笔记(必看篇)
Jun 23 Javascript
javascript验证内容为数字以及长度为10的简单实例
Aug 20 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
Feb 12 Javascript
js jquery 获取某一元素到浏览器顶端的距离实现方法
Sep 05 jQuery
Vue 报错TypeError: this.$set is not a function 的解决方法
Dec 17 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计算两个路径的相对路径
2013/06/14 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
javascript中的变量是传值还是传址的?
2010/04/19 Javascript
关于jquery.validate1.9.0前台验证的使用介绍
2013/04/26 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
JS实现的驼峰式和连字符式转换功能分析
2016/12/21 Javascript
nodejs实例解析(输出hello world)
2017/01/03 NodeJs
JS基于正则截取替换特定字符之间字符串操作示例
2017/02/03 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
2017/07/31 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
vue.js多页面开发环境搭建过程
2019/04/24 Javascript
vue实现数字滚动效果
2020/06/29 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
[54:53]完美世界DOTA2联赛PWL S2 GXR vs PXG 第二场 11.18
2020/11/18 DOTA
2款Python内存检测工具介绍和使用方法
2014/06/01 Python
浅谈Python 的枚举 Enum
2017/06/12 Python
Python机器学习算法库scikit-learn学习之决策树实现方法详解
2019/07/04 Python
Python爬取视频(其实是一篇福利)过程解析
2019/08/01 Python
用python介绍4种常用的单链表翻转的方法小结
2020/02/24 Python
Python requests接口测试实现代码
2020/09/08 Python
html5 学习简单的拾色器
2010/09/03 HTML / CSS
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
SQL Server笔试题
2012/01/10 面试题
汇智创新科技发展有限公司
2015/12/06 面试题
如何用JQuery进行表单验证
2013/05/29 面试题
Python如何实现单例模式
2016/06/03 面试题
中学优秀班主任事迹材料
2014/05/01 职场文书
领导干部贪图享乐整改措施
2014/09/21 职场文书
政风行风整改方案
2014/10/25 职场文书
2015年城管执法工作总结
2015/07/23 职场文书
用Python生成会跳舞的美女
2022/01/18 Python
Alexa停服!网站排名将何去何从?目前还没有替代品。
2022/04/15 杂记