JS中Array数组学习总结


Posted in Javascript onJanuary 18, 2017

引用类型分为Object类型(所谓的对象),Array类型(本文谈的数组),Function类型等。

那么,数组是干啥的呢?在我看来,它是用来保存数据的。

一、声明一个数组:

1、构造函数 var colors=new Array();简写的话可以省略new,即var colors=Array();

2、数组字面量 var colors=["black","green","pink"];

二、读取和设置数组的值:

读取:colors[x];参数x为0~colors.length-1;

设置的话直接给colors[x]=进行赋值就好,这样会覆盖之前的数值哦;

三、在这里简单说说length的用法:

colors.length获取数组的长度,也可以说是数组有几项,如果说一个数组有7项,但是你写入了colors.length=2,那么就会删除后面的5项;

利用length属性也可以为数组最后添加数据:colors[colors.length]=进行赋值;

四、数组中的操作:

方法 作用 返回值
Array.push(x,y,z) 把xyz添加到数组末尾 新数组长度
Array.pop() 移除数组最后一项 移除的最后一项
Array.shift() 移除数组第一项 移除的第一项
Array.unshift(a,b,c) 在数组前端添加a,b,c 新数组长度
Array.reverse() 反转数组 反转后的新数组
Array.sort() 对数组中每一项的字符串进行升序排列 重新排序后的数组
Array.concat(a,b,c) 连接数组 返回连接好的新数组
Array.slice(1,n) 截取数组,从1到n,1和n为索引值 返回截取的数组(在这里返回从1开始,到n之前结束)
Array.indexOf(a,start) 查找a的所在的位置,从start开始 返回a所在的索引值,如果没有查找到则返回-1
Array.lastIndexOf(a,atart) 与indexOf相反,lastIndexOf从末尾开始查找 返回a所在的索引值,如果没有查找到则返回-1

splice()方法单拿出来说说。为什么单拿出来?因为牛逼;

1.删除。接受两个参数:要删除第一项的位置和要删除的项数;

例:splice(1,2),就是要删除数组种的2,3项;

2.插入。接受三个参数:起始位置,0,要插入的项。

例:splice(2,0,"red","green"),会在数组索引值为2的位置插入red和green。

3.替换。接受三个参数:起始位置,要删除的项数,要插入的项。

例:splice(2,1,"red","green"),删除索引值为2这一项,添加red和green。

tips:sort()用法实例:按升序排列数组
function compare(val1,val2){
if(val1<val2){
return -1;
}else if(val1>val2){
return 1;
}else{
retuen 0
}
}
var num=[0,2,9,3,1];
num.sort(compare);
alert(num);//0,1,2,3,9

 五。数组中的迭代方法

1.every()和some():

查询数组中的每一项是否满足条件,如果每一项都返回true,则result返回true。
var numbers=[0,1,2,3,4];
var result=numbers.every(function(item,index,array){
return (item>2)
})
alert(result);//false
查询数组中的每一项是否满足条件,如果有一项都返回true,则result返回true。
var numbers=[0,1,2,3,4];
var result=numbers.some(function(item,index,array){
return (item>2)
})
alert(result);//true

2.filter():

该方法会返回结果为true的项组成的数组;

3.map():

var result=numbers.map(function(item,index,array){
return item*2;
})

返回数组执行完参数之后的新数组。

六、归并

Array.reduce()

var numbers=[1,2,3,4,5];
var sum=numbers.reduce(function(prev,cur,index,array){
return prev+cur
})
alert(sum);

在上个例子中,reduce()接受四个参数,第一个参数是数组的第一项,第二个参数是数组的第二项;

第一次执行函数,prev是1,cur是2,第二次执行,prev是3(1+2的结果),cur是3。

Array.reduceRight()。和reduce类似。只不过从数组右侧开始。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript事件处理器中的event参数使用介绍
May 24 Javascript
JavaScript中的bold()方法使用详解
Jun 08 Javascript
jQuery+HTML5实现图片上传前预览效果
Aug 20 Javascript
JS获取html元素的标记名实现方法
Oct 08 Javascript
微信小程序 小程序制作及动画(animation样式)详解
Jan 06 Javascript
利用 spin.js 生成等待效果(js 等待效果)
Jun 25 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
Jul 27 Javascript
vue中路由参数传递可能会遇到的坑
Dec 07 Javascript
原生JS+HTML5实现的可调节写字板功能示例
Aug 30 Javascript
vue服务端渲染添加缓存的方法
Sep 18 Javascript
vue-next/runtime-core 源码阅读指南详解
Oct 25 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
Oct 31 Javascript
原生javascript实现图片放大镜效果
Jan 18 #Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
Jan 18 #Javascript
原生js实现回复评论功能
Jan 18 #Javascript
js实现表格筛选功能
Jan 18 #Javascript
js放大镜放大购物图片效果
Jan 18 #Javascript
详解vue 中使用 AJAX获取数据的方法
Jan 18 #Javascript
easyui 中的datagrid跨页勾选问题的实现方法
Jan 18 #Javascript
You might like
php实现读取超大文件的方法
2014/07/28 PHP
PHP框架自动加载类文件原理详解
2017/06/06 PHP
关于实现代码语法标亮 dp.SyntaxHighlighter
2007/02/02 Javascript
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
浅谈javascript中遇到的字符串对象处理
2016/11/18 Javascript
Angular ng-repeat遍历渲染完页面后执行其他操作详细介绍
2016/12/13 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
JavaScript实现简单评论功能
2017/08/17 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
vue、react等单页面项目应该这样子部署到服务器
2018/01/03 Javascript
jQuery实现标签子元素的添加和赋值方法
2018/02/24 jQuery
Vue2.5学习笔记之如何在项目中使用和配置Vue
2018/09/26 Javascript
Element Collapse 折叠面板的使用方法
2020/07/26 Javascript
[01:15:44]首部DOTA2纪录片今日23时全网上映
2014/03/19 DOTA
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
python根据开头和结尾字符串获取中间字符串的方法
2015/03/26 Python
Python实现去除列表中重复元素的方法小结【4种方法】
2018/04/27 Python
基于Python打造账号共享浏览器功能
2019/05/30 Python
解决jupyter notebook 前面书写后面内容消失的问题
2020/04/13 Python
利用CSS3的特性改变文本选中时的颜色
2013/09/11 HTML / CSS
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
Hoka One One法国官网:美国专业跑鞋品牌
2018/12/29 全球购物
指针和引用有什么区别
2013/01/13 面试题
办公文员的工作岗位职责
2013/11/12 职场文书
物理专业本科生自荐信
2014/01/30 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
个人查摆问题整改措施
2014/10/04 职场文书
优秀少先队辅导员事迹材料
2014/12/24 职场文书
2015年十一国庆节演讲稿
2015/03/20 职场文书
重温入党誓词主持词
2015/06/29 职场文书
公司考勤管理制度
2015/08/04 职场文书
聘任协议书(挂靠)
2015/09/21 职场文书
详解MySQL多版本并发控制机制(MVCC)源码
2021/06/23 MySQL
Java存储没有重复元素的数组
2022/04/29 Java/Android