Js--Array2

最强大的js数组操作splice()

  有三种用法:

  删除 ,只需要提供两个参数,要删除的第一项位置和要删除的项数,例如splice(2,2);

  插入,可以在指定位置插入任意的项,例如splice(2,0,'blue','balck'),在数组的位置2开始插入两个参数

  替换,可以替换指定的项,例如splice(2,1,'blue'),删除位置2的项,然后再从位置2开始插入字符串     

 位置方法  indexOf()lastIndexOf()

  var numbers=[1,3,5,3,10]; 

  console.log(numbers.indexOf(3,2));  --返回3 ,从位置2开始搜索

  console.log(numbers.indexOf(3));  --返回1   ,从数组初始开始搜索,如果不存在,则返回-1

迭代方法:

  every():对数组中的每一项运行给定函数,如果该函数对每一项都返回true,都返回true,否则返回false

  filter():过滤器,返回数组中符合该函数条件的项

  forEach():遍历,遍历数组中的每一项,无返回值

  map():重置,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组

  some():与every相反,对数组中任意一项运行给定函数返回结果为true,则返回true,类似C#中的Any()

    var numbers=[1,3,5,3,10];

    numbers.every(function(value,index,array){return (value>0)})  --返回ture

   numbers.filter(function(value,index,array){return (value>2)})  --返回[3,5,3,10]

   numbers.forEach(function(value,index,array){console.log(value);console.log(index;)})

   numbers.map(function(value,index,array){return value+1;}) --返回[2, 4, 6, 4, 11]

   numbers.some(function(value,index,array){return value>9;})  --返回true

  缩小方法:

   reduce()与reduceRight() :对数组进行迭代操作,并返回最终的值,比如求和或者求积

  numbers.reduce(function(pre,cur,index,array){return pre+cur;})

 --返回22 其中,pre每一次迭代后的值,第一次表示数组项1的值,cur表示数组的下一项

 

 

 

posted @ 2017-01-19 10:10  无心风雨的落叶  阅读(326)  评论(0编辑  收藏  举报