博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS Array ECMAScript5 Methods
阅读量:6437 次
发布时间:2019-06-23

本文共 1641 字,大约阅读时间需要 5 分钟。

JavaScript 的新版本(ECMAScript 5)中,为数组新增了一些方法。这些方法包括:

          forEach(f [,o]): 此方法类似于for/in循环,其作用是遍历整个数组并执行函数的某些操作,但它不会遍历数组的属性。它接受一个函数参数,该函数可以有1、2与3个参数。完整的三个参数分别为:数组中的每一个值,数组的索引,数组本身。这个函数没有返回值。如:

var a = [0,1,2,3,4];  var sum = 0;  a.forEach(function(v,i,arr){       sum += v;       console.log(arr[i]);  });// http://www.cnblogs.com/roucheng/

 map(f [,o]): 类似于forEach()方法,但它有返回值---一个新数组,它的参数函数必须有返回值,参数函数的返回值作为新数组的元素。其它用法与forEach()方法类似。

var a = [1,2,3,4,5];  var b = a.map(function(x){       return x*x;  });    console.log(a); //[1,2,3,4,5]  console.log(b); //[1,4,9,16,25]

 filter(f [, o]): 对数组元素进行过滤,返回一个符合要求的新数组。如:

var a = [1,2,3];  a[5] = 6;    var b = a.filter(function(x){      return x !== undefined;  });    console.log(a); //[1,2,3,undefined,undefined,6];  console.log(b); //[1,2,3,6];// http://www.cnblogs.com/roucheng/

every(f [, o]): 有一个布尔类型的返回值,函数参数f用来检测数组元素是否满足要求。有且只有数组全部元素都满足f的要求时,才会返回true,否则返回false。

var a = [1,3,7];    var flag = a.every(function(x){       return x < 5;  });    console.log(flag); //false

 some(f [, o]): 与every()方法不同,只要有数组元素满足f的要求就返回true,否则返回false。

var a = [1,3,7];    var flag = a.some(function(x){       return x < 5;  });    console.log(flag); //true

  reduce(f [, initial, index, array]): 对数组元素值进行计算。返回最后一次计算的值。函数f(x,y)接受两个参数,如果有初始值,则把初始值作为x计算,然后把每一次的计算值作为下一次的x,把数组元素依次作为y。

var a = [1,2,3,4,5];    var b = a.reduce(function(x,y){       return x+y;  },0);    console.log(b);  //15

  reduceRight(): 与reduce()函数作用相同,只是它从右向左依次取数组元素。

 

       indexOf(value [, start]): 根据值来找到相应在数组中的索引位置,取多个匹配索引用最小的那个或在没有匹配的情况下返回-1。

       lastIndexOf(value [, start]): 与indexOf()函数相似,只是它是从后面向前面进行搜索。

        推荐:

转载于:https://www.cnblogs.com/roucheng/p/jsarray.html

你可能感兴趣的文章
OpenResty — Nginx全能插件版
查看>>
JQ多种刷新方式
查看>>
Investigation of Different Nets and Layers
查看>>
jsoncpp的api简要说明
查看>>
http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html
查看>>
虚拟化之esxi命令行管理之二
查看>>
推荐10+必备的 WordPress 常用插件
查看>>
iOS开发之网络编程--使用NSURLConnection实现大文件下载
查看>>
WCF入门教程1——WCF简要介绍
查看>>
【NLP】基于统计学习方法角度谈谈CRF(四)
查看>>
jdbc连接
查看>>
ADO.NET(OleDb)读取Excel表格时的一个BUG
查看>>
麻将胡牌算法研究
查看>>
Executors线程池关闭时间计算
查看>>
优化 html 标签 为何能用HTML/CSS解决的问题就不要使用JS?
查看>>
vmware的硬件选项里有关于虚拟化引擎的选项(虚拟机支持硬件虚拟化)
查看>>
[转](SQL Server) Convert a File from utf-8 to ANSI (such as Windows-1252)
查看>>
asp.net 获得域名,端口,虚拟目录[转]
查看>>
FlexCel 插入公式和插入新行
查看>>
WPF动画: 窗体上下方向同时拉伸
查看>>