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对talbe进行动态添加、删除、验证实现代码
Mar 29 Javascript
通过一段代码简单说js中的this的使用
Jul 23 Javascript
使用JavaScript实现弹出层效果的简单实例
May 31 Javascript
JavaScript常用代码书写规范的超全面总结
Sep 11 Javascript
D3.js实现文本的换行详解
Oct 14 Javascript
Angularjs 动态改变title标题(兼容ios)
Dec 29 Javascript
浅谈pc端rem字体设置的问题
Aug 03 Javascript
详解Angular4 路由设置相关
Aug 26 Javascript
JS加密插件CryptoJS实现AES加密操作示例
Aug 16 Javascript
Vue开发环境跨域访问问题
Jan 22 Javascript
一篇文章带你浅入webpack的DLL优化打包
Feb 20 Javascript
vue实现可移动的悬浮按钮
Mar 04 Vue.js
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 超链接 抓取实现代码
2009/06/29 PHP
php获取中文拼音首字母类和函数分享
2014/04/24 PHP
a标签的css样式四个状态
2021/03/09 HTML / CSS
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
jQuery中对未来的元素绑定事件用bind、live or on
2014/04/17 Javascript
JS限制文本框只能输入数字和字母方法
2015/02/28 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
jQuery中通过ajax的get()函数读取页面的方法
2016/02/29 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
详解ECMAScript6入门--Class对象
2017/04/27 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
javascript用rem来做响应式开发
2018/01/13 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
JavaScript实现简单动态进度条效果
2018/04/06 Javascript
vuejs实现标签选项卡动态更改css样式的方法
2018/05/31 Javascript
vue实现pdf导出解决生成canvas模糊等问题(推荐)
2018/10/18 Javascript
一秒学会微信小程序制作table表格
2019/02/14 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
vuex的使用和简易实现
2021/01/07 Vue.js
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
python实现AES加密与解密
2019/03/28 Python
Python中函数的返回值示例浅析
2019/08/28 Python
Python pygame绘制文字制作滚动文字过程解析
2019/12/12 Python
Python逐行读取文件内容的方法总结
2020/02/14 Python
Python netmiko模块的使用
2020/02/14 Python
Python通过正则库爬取淘宝商品信息代码实例
2020/03/02 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
2020/04/01 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
西班牙床垫网上商店:Colchones.es
2018/05/06 全球购物
企业法人代表授权委托书
2014/10/02 职场文书
领导干部整治奢华浪费之风思想汇报
2014/10/07 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
小学感恩节活动总结
2015/03/24 职场文书
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
2022/04/06 Python
win11开机发生死循环重启怎么办?win11开机发生死循环重启解决方法
2022/08/05 数码科技