ECMAScript5新增

一、新增方法

1、indexOf:判断某个字符是否存在,如果存在返回相应的下标,如果不存在则返回-1  语法:arr.indexOf();

2、lastIndexOf:判断某个字符是否存在,如果存在则返回相应的最后的下标,如果不存在则返回-1  语法:arr.lastIndexOf();

3、forEach:用于调用数组的每个元素,并将元素传递给回调函数。  语法:数组.forEach(function(value,index,arr) { } )

  第一个参数是数据;第二个参数是下标;第三个参数是数组

var arr = [10,20,30,40,50];
arr.forEach(function(value,index,arr){
    console.log(array);
})

4、map():映射  map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值;按照原始数组元素顺序依次处理元素。

  注意:map() 不会对空数组进行检测; map() 不会改变原始数组。

var arr = [10,20,30,40];
var newArr = arr.map(function(v){
   return v*= 1.3;      
})
console.log(newArr); //[13, 26, 39, 52]

5、filter():过滤。创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

  注意:filter() 不会对空数组进行检测; filter() 不会改变原始数组。

语法:

arr.filter(function(v){
    return 表达式
})   
var arr = [10,20,30,40,50,40,50];
var newArr = arr.filter(function(v){
    return v>30;
}) 
console.log(newArr); //[40, 50, 40, 50]条件大于30的数将赋到新的数组并输出

6、reduce():计算  reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值;reduce() 可以作为一个高阶函数,用于函数的 compose。

  注意: reduce() 对于空数组是不会执行回调函数的。

var arr = [10,20,30,40]
var sum = arr.reduce(function(a,b){
     return a+b
     })
 console.log(sum) //100 数组里面的数的和,加号可替换减、乘、除
原文地址:https://www.cnblogs.com/jiangw/p/8335376.html