JavaScript 数组- Array的方法总结(推荐)


Posted in Javascript onJuly 21, 2016

JavaScript中的Array类型是经常用到的,Array类型也提供了很多方法能实现我们需求,下面我们来总结一下

一、创建Array的方法

var colors=new Array();

var colors=new Array(3);//创建一个长度为3的数组

var colors=new Array("red","blue")//创建一个数组["red","blue"]

当然,上面的new可以省略不写,如 var colors=Array("red");

2、直接使用数组字面量

var colors=["red","blue","green"];

二、Array的方法1

var colors=["red","blue","green"];

1、获取数组的长度 colors.length;//3

2、访问数组第二项colors[1];//blue

3、更改数据的第二项colors[1]="black";//["red","black","green"]

4、检查是否是一个数组 colors instanceof Array;//true

5、colors.toString();//默认会以逗号隔开输出字符串  red,blue,green

6、colors.join("|");//自定义以“|”隔开输出字符串 red|blue|green

7、colors.push("brown")//往数组的尾部添加一项

8、colors.pop()//往数组的尾部删除一项

9、colors.shift()//删除数组的第一项,并取得该值

10、colors.unshift("k1","k2")//往数组的前面插入这两项;["k1","k2","red","blue","green"];

11、colors.reverse()//翻转数组的顺序

12、colors.sort()或者colors.sort([func]);

13、concat() 返回一个新数组,不影响原数组 colors.concat()或者colors.concat("k1");

14、slice(begin,end)从数组下标begin开始到end复制这个数据,不包括下标end,如果是slice(begin)那么就是从下标begin开始到数组的尾部

15、splice

splice(0,2)//从下标0开始删除数组的两项

splice(2,0,"k1","k2")从下标2开始删除0项,紧接着从这里插入两项

splice(2,1,"k1")//从下标2开始删除一项,紧接着从这里插入一项

16、indexOf("item")//从数组头开始查找某项,找到后返回下标值,找不到返回-1

17、lastIndexOf("item")//从数组尾开始查找某项,找到后返回下标值,找不到返回-1

三、Array方法2:迭代方法(ECMAScript5)

1、every():对数组的每一项运行给定的函数,每一项都返回true,则返回true(不影响原数组)

var numbers=[1,2,3,2,1];
//判断是否每个数字都大于2
var flag=numbers.every(function (item,index,array) {
  return item>2;
});

2、filter():对数组中每一项运行给定的函数,返回该函数为true的项(不影响原数组)

var numbers=[1,2,3,2,1];
//返回大于2的项
var array=numbers.filter(function (item,index,array) {
  return item>2;
});

3、forEach():对数组中的每一项执行给定的函数,不返回值 (不影响原数组)

var numbers=[1,2,3,2,1];
//输出每一项的平方
numbers.forEach(function (item,index,array) {
  console.log(item*2);
});

4、map():对数组的每一项执行给定的函数,返回每次函数调用后结果组成的数组(不影响原数组)

var numbers=[1,2,3,2,1];
//返回每一项的平方
var array=numbers.map(function (item,index,array) {
  return item*item;
});

5、some():对数组的每一项执行给定的函数,如果有一项返回true则,则返回true

var numbers=[1,2,3,2,1];
var flag=numbers.some(function (item,index,array) {
  return item>2
});

三、Array方法3:归并方法(ECMAScript5)

1、reduce()方法从数组的第一行开始,逐个遍历到最后

2、reduceRight()方法从数组的最后一项开始,逐个向前遍历

var numbers=[1,2,3,4,5];
var result=numbers.reduce(function (prev,cur,index,array) {
  //prev:前一个运算的结果,刚开始时候为数字的第一项
  //cur:数组的当前项
  //index:当前数组的下标
  //array:执行这个运算的数组,当前为numbers
  console.log("prev:"+prev);
  console.log("cur:"+cur);
  console.log("index:"+index);
  console.log("array:"+array);
  console.log("=============");
  return prev+cur;
});

以上这篇JavaScript 数组- Array的方法总结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用javascript实现给出的盒子的序列是否可连为一矩型
Aug 30 Javascript
asp javascript 实现关闭窗口时保存数据的办法
Nov 24 Javascript
js获取图片长和宽度的代码
Nov 24 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
Oct 25 Javascript
Javascript实现计算个人所得税
May 10 Javascript
javascript实现动态表头及表列的展现方法
Jul 14 Javascript
jQuery文字提示与图片提示效果实现方法
Jul 04 Javascript
Bootstrap 实现查询的完美方法
Oct 26 Javascript
原生js实现无缝轮播图效果
Jan 11 Javascript
vue左侧菜单,树形图递归实现代码
Aug 24 Javascript
highCharts提示框中显示当前时间的方法
Jan 18 Javascript
利用 JavaScript 构建命令行应用
Nov 17 Javascript
完美JQuery图片切换效果的简单实现
Jul 21 #Javascript
jQuery的ajax下载blob文件
Jul 21 #Javascript
picLazyLoad 实现图片延时加载(包含背景图片)
Jul 21 #Javascript
浅谈DOCTYPE对$(window).height()取值的影响
Jul 21 #Javascript
jQuery新窗口打开外链接
Jul 21 #Javascript
JS for循环中i++ 和 ++i的区别介绍
Jul 20 #Javascript
javascript和jQuery实现网页实时聊天的ajax长轮询
Jul 20 #Javascript
You might like
怎样辨别一杯好咖啡
2021/03/03 新手入门
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
document 和 document.all 分别什么时候用
2006/06/22 Javascript
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
基于jQuery的遍历同id元素 并响应事件的代码
2012/06/14 Javascript
jquery提取元素里的纯文本不包含span等里的内容
2013/09/30 Javascript
浅谈JavaScript的事件
2015/02/27 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
详解angular中通过$location获取路径(参数)的写法
2017/03/21 Javascript
JS去掉字符串末尾的标点符号及删除最后一个字符的方法
2017/10/24 Javascript
layui实现把数据表格时间戳转换为时间格式的例子
2019/09/12 Javascript
vue - vue.config.js中devServer配置方式
2019/10/30 Javascript
[39:32]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第二场
2014/05/23 DOTA
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
AI人工智能 Python实现人机对话
2017/11/13 Python
[原创]教女朋友学Python(一)运行环境搭建
2017/11/29 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
浅谈Python中的bs4基础
2018/10/21 Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
2019/05/08 Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
2020/02/28 Python
python中导入 train_test_split提示错误的解决
2020/06/19 Python
Python 使用生成器代替线程的方法
2020/08/04 Python
Python 3.9的到来到底是意味着什么
2020/10/14 Python
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
大四学年自我鉴定
2013/11/13 职场文书
生产厂厂长岗位职责
2013/12/25 职场文书
教师节商场活动方案
2014/02/13 职场文书
国际贸易专业个人职业生涯规划
2014/02/15 职场文书
企业节能减排实施方案
2014/03/19 职场文书
迎七一演讲稿
2014/09/12 职场文书
2014年网络管理员工作总结
2014/12/01 职场文书
微信小程序用户授权最佳实践指南
2021/05/08 Javascript
Python如何将list中的string转换为int
2022/07/15 Ruby