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实现的动态添加表单元素input,button等(appendChild)
Nov 24 Javascript
Javascript 继承实现例子
Aug 12 Javascript
JS 中document.URL 和 windows.location.href 的区别
Nov 11 Javascript
js创建子窗口并且回传值示例代码
Jul 02 Javascript
jQuery插件 Jqplot图表实例
Jun 18 Javascript
41个Web开发者必须收藏的JavaScript实用技巧
Jul 22 Javascript
纯JS代码实现隔行变色鼠标移入高亮
Nov 23 Javascript
jQuery修改DOM结构_动力节点Java学院整理
Jul 05 jQuery
基于substring()和substr()的使用以及区别(实例讲解)
Dec 28 Javascript
js构造函数创建对象是否加new问题
Jan 22 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
Mar 06 Javascript
基于JS实现父组件的请求服务过程解析
Oct 14 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
PHP设置一边执行一边输出结果的代码
2013/09/30 PHP
PHP引用(&)各种使用方法实例详解
2014/03/20 PHP
Codeigniter+PHPExcel实现导出数据到Excel文件
2014/06/12 PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
2014/11/19 PHP
php实现通用的信用卡验证类
2015/03/24 PHP
php集成动态口令认证
2016/07/21 PHP
php+Memcached实现简单留言板功能示例
2017/02/15 PHP
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
2010/04/13 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
2013/11/22 Javascript
Node.js 去掉种子(torrent)文件里的邪恶信息
2015/03/27 Javascript
关于Bootstrap弹出框无法调用问题的解决办法
2016/03/10 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
JavaScript学习笔记--常用的互动方法
2016/12/07 Javascript
React Native验证码倒计时工具类分享
2017/10/24 Javascript
Vue中的Vux配置指南
2017/12/08 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
vue项目引入ts步骤(小结)
2019/10/31 Javascript
[04:14]从西雅图到上海——玩家自制DOTA2主题歌曲应援TI9
2019/07/11 DOTA
分析Python编程时利用wxPython来支持多线程的方法
2015/04/07 Python
Python编程中用close()方法关闭文件的教程
2015/05/24 Python
Python实现按特定格式对文件进行读写的方法示例
2017/11/30 Python
python pytest进阶之conftest.py详解
2019/06/27 Python
python并发编程 Process对象的其他属性方法join方法详解
2019/08/20 Python
Python实现滑动平均(Moving Average)的例子
2019/08/24 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
2020/06/24 Python
html5定制表单_动力节点Java学院整理
2017/07/11 HTML / CSS
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
高中自我评价范文
2014/01/27 职场文书
美食节目策划方案
2014/05/31 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
企业法人代表证明书
2014/09/27 职场文书
副总经理岗位职责范本
2014/09/30 职场文书
2015年重阳节活动总结
2015/03/24 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
关于Numpy之repeat、tile的用法总结
2021/06/02 Python