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 AJAX 调用WebService实现代码
Mar 24 Javascript
document.getElementById的简写方式(获取id对象的简略写法)
Sep 10 Javascript
script标签属性type与language使用选择
Dec 02 Javascript
JavaScript中把数字转换为字符串的程序代码
Jun 19 Javascript
JS 实现图片直接下载示例代码
Jul 22 Javascript
JavaScript实现列表分页功能特效
May 15 Javascript
很全面的JavaScript常用功能汇总集合
Jan 22 Javascript
boostrap模态框二次弹出清空原有内容的方法
Aug 10 Javascript
RequireJS用法简单示例
Aug 20 Javascript
vue使用better-scroll实现下拉刷新、上拉加载
Nov 23 Javascript
Vue实现图书管理案例
Jan 20 Vue.js
JS前端监控采集用户行为的N种姿势
Jul 23 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
DISCUZ 分页代码
2007/01/02 PHP
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
2010/10/12 PHP
CodeIgniter框架URL路由总结
2014/09/03 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
非常不错的一个javascript 类
2006/11/07 Javascript
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
JS操作Cookie写入和读取实例代码
2013/10/20 Javascript
javascript实现页面刷新时自动清空表单并选中的方法
2015/07/18 Javascript
理解javascript中Map代替循环
2016/02/26 Javascript
功能强大的jquery.validate表单验证插件
2016/11/07 Javascript
使用D3.js制作图表详解
2017/08/13 Javascript
JS实现基于Sketch.js模拟成群游动的蝌蚪运动动画效果【附demo源码下载】
2017/08/18 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
2018/09/30 Javascript
JS操作json对象key、value的常用方法分析
2019/10/29 Javascript
python处理圆角图片、圆形图片的例子
2014/04/25 Python
python获取本机mac地址和ip地址的方法
2015/04/29 Python
Python使用OpenCV进行标定
2018/05/08 Python
Flask框架中request、请求钩子、上下文用法分析
2019/07/23 Python
关于Python形参打包与解包小技巧分享
2019/08/24 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
Python箱型图处理离群点的例子
2019/12/09 Python
tensorflow中tf.reduce_mean函数的使用
2020/04/19 Python
HTML5基于flash实现播放RTMP协议视频的示例代码
2020/12/04 HTML / CSS
一道SQL存储过程面试题
2016/10/07 面试题
物流管理应届生求职信
2013/11/07 职场文书
期末考试动员演讲稿
2014/01/10 职场文书
酒店总经理助理岗位职责
2014/02/01 职场文书
文科毕业生自荐书范文
2014/04/17 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
办公室主任个人对照检查材料思想汇报
2014/10/11 职场文书
红十字会救护培训简讯
2015/07/20 职场文书
中学总务处工作总结
2015/08/12 职场文书
2016暑期社会实践新闻稿
2015/11/25 职场文书