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 相关文章推荐
TextArea 控件的最大长度问题(js json)
Dec 16 Javascript
javascript动态改变img的src属性图片不显示的解决方法
Oct 20 Javascript
通过jQuery源码学习javascript(三)
Dec 27 Javascript
使用cluster 将自己的Node服务器扩展为多线程服务器
Nov 10 Javascript
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
Dec 12 Javascript
轻松掌握JavaScript享元模式
Aug 27 Javascript
全面解析Bootstrap表单样式的使用
Sep 09 Javascript
javascript使用闭包模拟对象的私有属性和方法
Oct 05 Javascript
vue获取当前点击的元素并传值的实例
Mar 09 Javascript
vue设置动态请求地址的例子
Nov 01 Javascript
javascript 数组精简技巧小结
Feb 26 Javascript
浅谈JavaScript节流和防抖函数
Aug 25 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
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
10个简化PHP开发的工具
2014/12/25 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
Yii使用migrate命令执行sql语句的方法
2016/03/15 PHP
PHP识别二维码的方法(php-zbarcode安装与使用)
2016/07/07 PHP
PHP输出XML格式数据的方法总结
2017/02/08 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
PHP实现限制域名访问的实现代码(本地验证)
2020/09/13 PHP
一个关于jqGrid使用的小例子(行按钮)
2011/11/04 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
2015/10/26 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
2016/12/27 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
node.js中axios使用心得总结
2017/11/29 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
autojs 蚂蚁森林能量自动拾取即给指定好友浇水的实现方法
2020/05/03 Javascript
vue项目,代码提交至码云,iconfont的用法说明
2020/07/30 Javascript
[05:40]DOTA2荣耀之路6:Wings最后进攻
2018/05/30 DOTA
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
Python中itertools模块用法详解
2014/09/25 Python
Python中的descriptor描述器简明使用指南
2016/06/02 Python
python中字符串类型json操作的注意事项
2017/05/02 Python
python实现简单tftp(基于udp协议)
2018/07/30 Python
python golang中grpc 使用示例代码详解
2020/06/03 Python
欧洲领先的技术商店:eibmarkt.com
2019/05/10 全球购物
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
What is view? why do we have view?
2012/06/22 面试题
课程设计心得体会
2013/12/28 职场文书
护士辞职信范文
2014/01/19 职场文书
回门宴父母答谢词
2014/01/26 职场文书
学校标语大全
2014/06/19 职场文书
2015中秋节慰问信范文
2015/03/23 职场文书
感恩父母主题班会
2015/08/12 职场文书
校运会班级霸气口号
2015/12/24 职场文书
js基础语法与maven项目配置教程案例
2021/07/15 Javascript