Array 对象的方法

数组

数组内置方法:

排序方法:

sort(fn)默认照ASCII码来排序 fn函数可以自定义排序的规则
reverse()倒序
实例:
 var arr = [2, 5, 9, 4, 3, 1, 0]        
  arr.sort(function (a,b) {        
     return a - b;        
 })        
 console.log(arr);//输出结果是[0,1,2,3,4,5,9,] 通过函数定义了一个升序的方法;

 var arr1=[1,2,3,4,5,6,7,8,9]        
 arr1.reverse();        
 console.log(arr1);//输出结果是[9,8,7,6,5,4,3,2,1] 通过该方法实现倒序;

转换方法:

join(sp)能将数组转换为字符串(通过指定字符链接起来)
实例:
  var  stringArray = ["This","is", "JS", "Campus"]        
  var arr1=stringArray.join(" ");//括号放需要的字符; 有返回值;       
     console.log(arr1);//输出结果是This is Js Campus;
数组新的方法 Es6   

高阶函数:

lastIndexOf()最后一次出现的位置 找到返回该元素位置 找不到返回-1
forEach(fn)遍历 括号放函数 函数里需要有三个参数 item:( 数组元素)index:(元素索引) arr:(数组自身)
实例:
 var arr = [1, 2, 5, 8, 2, 7]       
 var arr1 = arr.lastIndexOf(2);//括号放想找的元素  又返回值
 console.log(arr1);//输出结果为4 返回索引       
 var arr1 = arr.lastIndexOf("hello");        
 console.log(arr1);//输出结果为-1  找不到该元素
// lastIndexOf() 和  indexOf()比较相向  
//不同的就是一个是找到最后一次出现的位置     一个是第一次出现的位置。
----------------------

 var arr0 = [10, 20, 30, 40, 50]
 var sum=0;        
 arr0.forEach(function (item, index, arr) {        
          sum+=item;        
          //item 是数组每个元素
          //index 是数值索引
          //arr  是原数组
    })       
 console.log(sum);//输出结果为150  利用了forEach方法做了数组求和

reduce(fn)将数组元素计算为一个值 自左向右 括号放函数
reduceRight()功能和reduce类似, 区别:自右向左
实例:
//reduce(fn)将数组元素计算为一个值    自左向右        
//         参数说明:        
//             fn(total, currentValue, currentIndex, arr)        
//             total: 累加的结果        
//             currentValue:数组的元素
 var arr = [10, 20, 30, 40, 50]        
 var sum=arr.reduce(function (total,item) {        
   return  total +=item ;        
 })        
 console.log(sum);//输出结果是150  做了求和;
 此方法和 reduceRight()相向  无非是一个从左至右  一个是从右至左;
some()检测数组中是否有元素满足规则 true false
every()检测数组中是否所有元素满足规则 true false
map()通过指定函数处理数组的每个元素,并返回处理后的数组。
filter()过滤
实例:
  var arr = [55, 66, 77, 88, 99]        
  var num=   arr.some(function (item) {        
         return item > 90;//有返回值        
     })        
     console.log(num);//输出结果是true  只要有一个元素满足即可
 ------------------------
var arr1 = [55, 66, 77, 88, 99]        
var num1= arr1.every(function(item){        
   return item>80;          
 })        
 console.log(num1);//输出结果是flase 全部满足才可以;
 -------------------------
 var arr2=[10,20,30,40,50]      
 var num2=arr2.map(function(item){       
          return item-5;        
 })        
 console.log(num2);//输出结果是[5,15,25,35,45] 不改变原数组  返回新的数组;
 --------------------------
  var arr3 = [1, 2, 3, 4, 5, 6]    
  var num3=   arr3.filter(function (item) {    
           return item > 2;    //有返回值
       })    
  console.log(num3);//输出结果[3,4,5,6]   该方法过滤掉小于2的元素

总结:
好多方法太相向所以在使用这些方法的时候一定要注意细节之处。
有了数组的这些方法在实际情况运用起来就会特别方便,减少很多繁琐的步骤。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值