zoukankan      html  css  js  c++  java
  • 数组的扩展

    数组的类Array

    数组的定义

      Var arr=[元素]

      Var arr=new Array(3)  数字3 代表有三个元素或者3个空位

      Arr[0]=”” arr[1]=”” arr[2]=””

      Var arr=new Array(“zhang”,”li”,”wang”)

      

      如果数组定义采用new实例 类中跟的是一个数字n 代表有n个元素。

      1.Of方法 他是Array类上的方法

      var arr=Array.of(4)

      console.log(arr)//[4] 返回一个元素为4的数组

      2.foreach 原型上的一个方法 用于对数组遍历 返回值是undefined

       3.map 原型上的一个方法 用于对数组的遍历 返回仍然是一个数组

      

       map最大的功能是将原来的数组--映射成一个新的数组,内部一定要使用return

      4.filter 过滤从数组中找出所有符合条件的元素,并返回成一个新的数组,不改变原有数组

      

      5.find 对数组逐个查找,当返回值为true说明查找到,直接将结果返回,不在往下查找

      

       

      6.every 看数组中的每个元素是否都满足条件,返回值是true,如果有一个不满足条件返回值就是flase
      var as=arrs.every((item,index)=>{
      return item.age>=16;
      })
      console.log(as)

      7.some看数组中的元素是否有满足条件的,只要有一个满足就返回true,当全都不满足时返回值是flase
      var as=arrs.some((item,index)=>{
      return item.age<=16;
      })
      console.log(as)

      8.reduce 迭代
      var arr=[1,2,3,4,5,6,7,8,9,10]
      var as=arr.reduce((prev,item,index)=>{
      // prev 上一次的返回值
      // item:数组的元素,从第二个开始
      console.log(prev+item)
        return prev+item
      })
      //console.log(as)

      注意:1.从第二个元素开始执行 因为第二个元素没有上一个
         2.第一次执行返回的是第一个元素
          reduce()的参数是一个回调函数,回调函数中可以放三个参数,第一个叫prev代表上一次reduce执行的返回值,第二个是item是当前元素,第三个是index当前索引
         3.如果想让reduce从第一个元素开始执行(默认从第二个),回调后面的参数就是第一次执行的prev
         var arr=[1,2,3,4,5,6,7,8,9,10]
         var as=arr.reduce((prev,item)=>{
         // 后面加一个参数100代表,reduce从第一个元素开始,并且让他的返回值是100
                             console.log(prev+item)
           return prev+item
         },100)
            //console.log(as)
    面试题
       将一个数组转换成对象,属性是数字元素,属性值是元素出现的个数?
    let name = ["tom","jim","jack","tom","jack"]
    let as = name.reduce((prev,item) => {
    if(item in prev){
      prev[item]++
    }else{
      prev[item]=1
    }
      return prev;
    },{})
    console.log(as) // {tom: 2, jim: 1, jack: 2}

  • 相关阅读:
    Arduino uno 教程~持续更新~
    Arduino uno LED灯实验
    Arduino uno 引脚说明
    面包板的使用
    数量经济学推荐的Julia教程
    已知一点经纬度和距离,方位角;求另外一点的经纬度
    a recipe kindly provided by Dimas for kikuchi
    发现了拯救“文献多的一团麻”的工具
    matlab中diff的用法
    matlabR2017安装
  • 原文地址:https://www.cnblogs.com/jiangningjn/p/11179784.html
Copyright © 2011-2022 走看看