javascript数组的其他方法

来源:互联网 发布:模具erp软件 编辑:程序博客网 时间:2024/04/30 13:31
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Untitled Document</title><script type=text/javascript charset=utf-8><span style="white-space:pre"></span>//这里写javascript代码</script></head><body></body></html>

上面我就不多说了,javascript代码再下面:


新加位置的方法: indexOf lastIndexOf      
 1个参数的时候表示传值 返回索引位置(index从0开始)    

var arr = [1,2,3,4,5,4,3,2,1]; var index = arr.indexOf(4);     
index=3;

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

var index = arr.indexOf(4,4);  alert(index);                  
输出5
他们查找数组比较的时候 '==='

lastIndexOf :从后面查找

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

every :对于数组每一个元素进行一个函数的运行 如果都返回true 最后则返回true 如果有一个返回false最后结果则返回false ,function(item,index,array)代表单个,下表和数组

var arr = [1,2,3,4,5,4,3,2,1]; var result = arr.every(function(item , index , array){     return item > 2 ;                                      });   alert(result);                      
输出false


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

var arr = [1,2,3,4,5,4,3,2,1];   var result = arr.filter(function(item , index , array){      return item > 2 ;                                        });                                                          alert(result);                                               
输出3、4、5、4、3

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

var arr = [1,2,3,4,5,4,3,2,1];   arr.forEach(function(item, index, array){ alert(item);                      });                                       

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

var arr = [1,2,3,4,5,4,3,2,1];     var result = arr.map(function(item, index, array){   return item*2;                                   });                                                  alert(result);                  
输出:2、4、6、8、10、8、6、4、2

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

var arr = [1,2,3,4,5,4,3,2,1];    var result = arr.some(function(item, index, array){      return item >=5 ;                                    });                                                      alert(result);                                           
输出true


reduce    reduceRight           
变量的起始位置不同                       
前一个值 , 当前值 , 索引位置 , array       

var arr = [1,2,3,4,5,4,3,2,1];    var result = arr.reduce(function(prev , cur , index , array){       return prev + cur ;                                     });                                                                 alert(result);                                                      
输出:25   过程是:1是prev ,2是cur 得到3,然后数值3是prev 数组里面3是cur 得到6,依次类推。。。

var result = arr.reduceRight(function(prev , cur , index , array){     return prev + cur ;                                        });                                                                    alert(result);                                                         
reduce加上Right的意思就是从右边开始,由右向左。。。

0 0