JavaScript_ECMA5数组新特性详解

var arr = [ 1, 2, 3, 4, 5, 4, 3, 2, 1 ];

新加位置的方法: indexOf lastIndexOf

1.1个参数的时候表示传值 返回索引位置(index从0开始)

var index = arr.indexOf(4);
alert(index); //3

2. 2个参数的时候 第一个参数表示起始位置 第二个参数还是值

var index = arr.indexOf(4,4);
alert(index); //5

3.他们查找数组比较的时候 '==='

lastIndexOf
var index = arr.lastIndexOf(2);
alert(index); //7

5个新加迭代的方法

1.every :对于数组每一个元素进行一个函数的运行 如果都返回true 最后则返回true 如果有一个返回false最后结果则返回false

var result = arr.every(function(item , index , array){
  return item >= 1 ;
  });
alert(result); //true

2.filter :对于数组的每一个元素进行一个函数的运行 给定的函数去执行 把过滤后的结果返回

 var result = arr.filter(function(item , index , array){
return item > 2 ;
});
alert(result); //3,4,5,4,3

3.forEach :循环数组每一项的值 并执行一个方法

 arr.forEach(function(item, index, array){
  alert(item); //1,2,3,4,5,4,3,2,1
});

4.map 对于数组的每一个元素进行一个函数的运行 可以经过函数执行完毕后 把新的结果返回

var result = arr.map(function(item, index, array){
  return item*10;
});
alert(result); //10,20,30,40,50,40,30,20,10

5.some :对于数组每一个元素进行一个函数的运行 如果有一项返回true 最后则返回true 如果每一项都返回false最后结果则返回false

var result = arr.some(function(item, index, array){
  return item >5 ;
});
alert(result); //false

reduce reduceRight

变量的起始位置不同

前一个值 , 当前值 , 索引位置 , array

var result = arr.reduce(function(prev , cur , index , array){
  return prev + cur ;
});
alert(result) //25;

var result = arr.reduceRight(function(prev , cur , index , array){
  return prev + cur ;
});
alert(result) //25;

以上这篇JavaScript_ECMA5数组新特性详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • JavaScript_ECMA5数组新特性详解

    var arr = [ 1, 2, 3, 4, 5, 4, 3, 2, 1 ]; 新加位置的方法: indexOf lastIndexOf 1.1个参数的时候表示传值 返回索引位置(index从0开始) var index = arr.indexOf(4); alert(index); //3 2. 2个参数的时候 第一个参数表示起始位置 第二个参数还是值 var index = arr.indexOf(4,4); alert(index); //5 3.他们查找数组比较的时候 '===' la

  • Java8常用的新特性详解

    一.Java 8 新特性的简介 速度更快 代码更少(增加了新的语法:Lambda表达式)强大的Stream API 便于并行 最大化减少空指针异常:Optional Nashorn引擎,允许在JVM上运行JS应用 二.Lambda表达式 Lambda表达式:特殊的匿名内部类,语法更简洁. Lanbda表达式允许把函数作为一个方法的参数(函数作为方法参数传递),将代码像数据一样传递. 基本语法: <函数式接口> <变量名> = (参数1,参数2...) ->{ //方法体 }

  • Android5.0新特性详解之全新的动画

    在Material Design设计中,为用户与app交互反馈他们的动作行为和提供了视觉上的连贯性.Material主题为控件和Activity的过渡提供了一些默认的动画,在android L上,允许自定义这些动画: Touch feedback 触摸反馈 Circular Reveal 圆形展示 Curved motion 曲线运动 View state changes 视图状态变化 Vector Drawables 矢量图动画 Activity transitions 活动转场 触摸反馈 触

  • SQL Server 2012 FileTable 新特性详解

    FileTable是基于FILESTREAM的一个特性.有以下一些功能: •一行表示一个文件或者目录. •每行包含以下信息: • •file_Stream流数据,stream_id标示符(GUID). •用户表示和维护文件及目录层次关系的path_locator和parent_path_locator •有10个文件属性 •支持对文件和文档的全文搜索和语义搜索的类型列. •filetable强制执行某些系统定义的约束和触发器来维护命名空间的语义 •针对非事务访问时,SQL Server配置FIL

  • Python3.9新特性详解

    本文主要介绍Python3.9的一些新特性,如:更快速的进程释放,性能的提升,简便的新字符串函数,字典并集运算符以及更兼容稳定的内部API,详细如下: 字典并集和可迭代更新 字符串方法 类型提示 新的数学函数 新的解析器 IPv6范围内的地址 新模块:区域信息 其他语言更改 1.字典并集和可迭代更新 Python 3.9 dict类.如果有两个字典a和b,则现在可以使用这些运算符进行合并和更新. 我们有合并运算符|: 使用Iterables进行字典更新 | =运算符的另一个很棒的性能是能够使用可

  • C#9.0新特性详解——顶级程序语句(Top-Level Programs)

    1 背景与动机 通常,如果只想用C#在控制台上打印一行"Hello World!",这可不是Console.WriteLine("Hello World!");一条语句就可以搞定的,还涉及到其他必要基础代码(如定义类和入口函数Main),例如下面: using System; class Program { static void Main() { Console.WriteLine("Hello World!"); } } 就打印一句"

  • python3.9之你应该知道的新特性详解

    一.数字类型 python除了支持原有的int和float类型,新增了支持Decimal或者Fraction.python还内置支持复数,后缀j或者J用于标识虚数. 二.字符串 如果字符串中有单引号而没有双引号,该字符串外将加注双引号,反之,则加注单引号.print() 函数输出的内容更简洁易读,它会省略两边的引号,并输出转义后的特殊字符. >> '"Isn\'t," they said.' '"Isn\'t," they said.' >>

  • PHP新特性详解之命名空间、性状与生成器

    本文主要跟大家介绍了关于PHP新特性之命名空间.性状与生成器的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 1.命名空间 命名空间是什么? 1).命名空间在PHP 5.3中被引入,类似于文件夹的功能.例如Symfony框架中的Request和Response,位于Symfony的命名空间下. 2).命名空间始终应该在<?php标签的下面一行. 3).PHP文件的命名空间和操作系统的物理文件系统不同,这是一个虚拟的概念,没有必要和文件系统的目录结构完全对应.虽然如此,绝大多数PHP

  • JAVA8 十大新特性详解

    "Java is still not dead-and people are starting to figure that out." 本教程将用带注释的简单代码来描述新特性,你将看不到大片吓人的文字. 一.接口的默认方法 Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下: 复制代码 代码如下: interface Formula {    double calculate(int a); default do

  • Android 7.0新特性详解

    谷歌正式在I/O大会现场详细介绍了有关Android 7.0的大量信息.目前,我们已经知道,新一代Android操作系统将支持无缝升级,能够通过Vulkan API来在中低硬件配置设备上实现流 畅.游戏体验以及更多的Emoji表情.不过,Android 7.0最大也是最引人关注的还是来自运行效率上的改进. 来自I/O大会现场的PPT显示,Android N的代码减少了50%,新的代码减少50%,安卓N运行环境有了明显改善,软件运行速度提升幅度达到600%,应用安装提速75%.这意味着用户 正在迎

随机推荐