ECMAScript 5中的数组的方法

Ecmascript5定义了9个新的数组方法遍历,映射,过滤,检测,简化和搜索数组。

  1.forEach()

Array.orEach()方法从头到尾遍历数组,第一个参数为此元素值,第二个参数为索引值,第三个参数为此数组this引用。

var data=[1,2,3,4,5];
var sum=0;
data.forEach(funciton (item){
sum+=item;
});
sum; //=>15;
data.forEach(funciton(v,i,a){
a[i]=v+a;
})
data; //=>[2,3,4,5,6];

  2.map()

Array.map()方法将调用的数组的每个元素传递给指定的函数,并返回一个数组,它包含该函数的返回值,此方法返回的为一个数组。

var arr=[1,2,3,4];
var temp=arr.map(funciton (value){
return value*value;
});
temp; //temp:[1,4,9,16]

  3.filter()

Array.filter()方法返回的数组元素是调用数组的一个子集。传递的函数是用来逻辑判定的:该函数返回true和false。

var arr=[1,2,3,4,5];
var smallValues=arr.filter(funciton (value){
reutrn value<3;
});
smallValues; //smallValues:[1,2];
var everyOther=arr.filter(function (value){
return value%2==0;
});
everyOther; //everyOther:[1,3,5];

  4.every()和some()

Array.every和Array.some()方法是数组的逻辑判定:他们对元素应用指定的函数进行判定,返回true和false。every()方法针对所有的数组元素进行判定,some()则为存在此条件的数组元素进行判定

var arr=[1,2,3,4,5];
arr.every(funciton (value){
return value<10;
}); //返回true:因为数组元素都小于10为真;
arr.some(funciton (value){
return value%2==0;
}); //返回true:因为数组元素中存在偶数
arr.some(isNan); //返回false:因为数组元素中不存在非空元素;

  5.reduce()和reduceRight()

Array.reduce()和Array.reduce.Right()方法使用指定的函数将数组元素进行组合,生成单个值。reduce()方法第一个参数为执行化简操作的函数,第二个参数为初始值。reduceRight()方法像似,区别是便利时reduceRight索引是从高至低,reduce索引是从低到高。

var arr=[1,2,3,4,5];
var sum=arr.reduce(funciton (x,y){ return x+y;},0); //数组求和;
var product=arr.reduce(funciton (x,y){ return x*y;},1 ); //数组求积;
var max=arr.reduce(function (x,y){ return x>y?x:y;}); //数组求最元素;
var big=arr.redureRight(funciton (accumulator,value){
  return Math.pow(value,accumulator);
});计算1^(2^(3^(4^5)))。乘方的优先顺序是从右到左。

6.indexOf()和lastIndexOf()

Array.indexOf()和lastIndexOf()方法,搜索整个数组中具有给定值的元素,返回找到第一个元素的索引,如果未找到返回-1;而LastIndexOf()方法是反响索引。第一个参数为,要搜索的元素,第二个参数,开始位置。  

javascrip中array使用(续)的更多相关文章

  1. javascrip中array使用

    一.测试数组长度是使用arr.length;(注:使用delete不会修改数组的length属性) 二.数组方法 1.join() Array.join()方法将数组所有元素都转化为字符串连接在一起, ...

  2. JavaScrip中 Array.reduce()

    数组的方法 reduce() reduce方法在数组的每一项元素上都会执行回调函数. 语法:array.reduce( callBack [ , init]  ) // 语法arrary.reduce ...

  3. Flex中 Array 的IndexOf 的作用

    Flex中 Array 的IndexOf 的作用 1.说明    indexOf用于在索引中从小到大查找,假设查得到就返回索引值,查不到就返回-1: 2.实例 (1)设计源代码 <?xml ve ...

  4. JS中Array数组的三大属性用法

    原文:JS中Array数组的三大属性用法 Array数组主要有3大属性,它们分别是length属性.prototype属性和constructor属性. JS操作Array数组的方法及属性 本文总结了 ...

  5. Javascript中Array(数组)对象常用的几个方法

    Javascript中Array数组的几个常用方法 pop()  --获取数组中末尾的元素 shift() --获取数组中首位元素 push() --在数组中末尾增加元素 slice()  --按照下 ...

  6. Javascript 中 Array的 sort()和 compare()方法

    Javascript 中 Array的 sort()方法其实是把要排序的内容转化为string(调用 toString()), 然后按照字符串的第一位 ascii 码先后顺序进行比较,不是数字. 我们 ...

  7. JavaScript 中Array数组的几个内置函数

    本文章内容均参考<JavaScript高级程序设计第三版> 今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工 ...

  8. Java-杂项: Java中Array和ArrayList区别

    ylbtech-Java-杂项: Java中Array和ArrayList区别 1.返回顶部 1. 1)精辟阐述:可以将 ArrayList想象成一种“会自动扩增容量的Array”. 2)Array( ...

  9. JavaScript中Array方法总览

    title: JavaScript中Array方法总览 toc: true date: 2018-10-13 12:48:14 push(x) 将x添加到数组最后,可添加多个值,返回数组长度.改变原数 ...

随机推荐

  1. linux采用模块方法,添加一个新的设备

    该文转载自:http://rangercyh.blog.51cto.com/1444712/521244 系统调用是操作系统内核和应用程序之间的接口,而设备驱动程序是操作系统内核和机器硬件之间的接口. ...

  2. Docker之配置Centos_ssh

    写Dockerfile配置文件 #DockerfileFROM centos:6  #以下命令用在什么镜像中MAINTAINER cuizhipeng <cuizhipeng@126.com&g ...

  3. Linux网络应用编程之交换机概述

    Packet Tracer入门 一,交换机概况 交换机工作在OSI(开放系统互联参考模型)数据链路层,接入交换机的任意两个网络节点(网络设备)都是独享带宽的. 二,交换机原理 交换机拥有一条很高带宽的 ...

  4. javascript 事件多次绑定和删除

    同一个事件绑定多个事件处理程序(适合自己写)IE: 添加: 对象.attachEvent("on事件名","处理程序/函数名"); 执行顺序从后向前 删除: 对 ...

  5. 如何用angularjs制作一个完整的表格之三__在ng-repeat中使用ng-model

    在ng-repeat中使用ng-model时会有许多问,有的人碰到无法获取绑定的数据内容,有的人遇到改动绑定的数据内容时所有循环生成的内容一起改变.上面的问题我在开发时也遇到过,但是解决后我却怎么也还 ...

  6. 深度学习算法实践15---堆叠去噪自动编码机(SdA)原理及实现

    我们讨论了去噪自动编码机(dA),并讨论了Theano框架实现的细节.在本节中,我们将讨论去噪自动编码机(dA)的主要应用,即组成堆叠自动编码机(SdA),我们将以MNIST手写字母识别为例,用堆叠自 ...

  7. PHP 冒泡排序法

    <?php // 冒泡排序法:将一个数组中的值按照从小到大的顺 序排序 $arr = array(33, 1, 4, 5, 2, 3, 7, 9, 8, 99); $len = count($a ...

  8. 数据库MySQL与xls文件的互导

    最近的一个项目需要将xls表导入到MySQL数据库中和将MySQL数据表导出到xls表中,在网上搜了很多资料,经过多次尝试终于实现了功能,废话不多说,在这粘贴出代码,希望可以帮到需要的朋友. 一.将. ...

  9. 搭建LNMP发布ecshop系统及压测启用opcache缓存与否的情况

    安装环境:CENTOS6.5,nginx1.6.2,php-5.5.18,mysql5.5.38 在安装软件之前安装epel源,就可以直接用yum安装libmcrypt,mhash,mcrypt等ph ...

  10. PHPExcel1

    下面是总结的几个使用方法 include 'PHPExcel.php'; include 'PHPExcel/Writer/Excel2007.php'; //或者include 'PHPExcel/ ...