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 相关文章推荐
Jquery.Form 异步提交表单的简单实例
Mar 03 Javascript
Seajs的学习笔记
Mar 04 Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 Javascript
JQuery简单实现锚点链接的平滑滚动
May 03 Javascript
实现placeholder效果的方案汇总
Jun 11 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
May 10 Javascript
jQuery获取当前点击的对象元素(实现代码)
May 19 Javascript
JavaScript实现微信号随机切换代码
Mar 09 Javascript
JS获取子节点、父节点和兄弟节点的方法实例总结
Jul 06 Javascript
javascript中的event loop事件循环详解
Dec 14 Javascript
vue history 模式打包部署在域名的二级目录的配置指南
Jul 02 Javascript
JS前端使用canvas实现扩展物体类和事件派发
Aug 05 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
跟我学Laravel之安装Laravel
2014/10/15 PHP
PHP中字符安全过滤函数使用小结
2015/02/25 PHP
PHP实现事件机制的方法
2015/07/10 PHP
php检测文本的编码
2015/07/26 PHP
PHP实现小程序批量通知推送
2018/11/27 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
php跨域调用json的例子
2013/11/13 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
JS实现网页上随滚动条滚动的层效果代码
2015/11/04 Javascript
Javascript设计模式之观察者模式(推荐)
2016/03/29 Javascript
JS倒计时实例_天时分秒
2017/08/22 Javascript
Python中MySQLdb和torndb模块对MySQL的断连问题处理
2015/11/09 Python
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
python控制windows剪贴板,向剪贴板中写入图片的实例
2018/05/31 Python
使用sklearn之LabelEncoder将Label标准化的方法
2018/07/11 Python
使用django的ORM框架按月统计近一年内的数据方法
2019/07/18 Python
Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str
2019/08/07 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
英国在线药房和在线药剂师:Chemist 4 U
2020/01/05 全球购物
XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
2016/01/12 面试题
建筑工程毕业生自我鉴定
2014/01/14 职场文书
刚毕业大学生自荐信范文
2014/02/20 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
初三学生评语大全
2014/04/24 职场文书
超市创意活动方案
2014/08/15 职场文书
后勤管理员岗位职责
2014/08/27 职场文书
六查六看自检自查剖析材料
2014/10/14 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书
春节慰问简报
2015/07/21 职场文书
学雷锋主题班会教案
2015/08/13 职场文书
2019年亲子运动会口号
2019/10/11 职场文书
七个Python必备的GUI库
2021/04/27 Python
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP
星际争霸 Light vs Action 一场把教主看到鬼畜的比赛
2022/04/01 星际争霸