js中Array.from方法

发布时间 2023-12-13 12:30:46作者: 帅到被人砍的阿豪

这个方法,主要用于将一个类似数组的东西变成为数组
一.将一个字符串转化伪数组

    let str='helloWord'
    let arr =Array.from(str)
    console.log(arr) //输出 ['h', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'd']

二.将一个对象转化为数组
注:将一个对象转化为数组的话,需要满足两点,1就是key得是一个数组,然后这个数组在转化为数组时,表示的是对应元素所在位置的下标
2.需要给这个对象添加一个length属性,length为几那么生成数组的长度就是几

    let obj={
          2:'1',
          3:'2',
          7:'3',
          length:3
      }
      let arr =Array.from(obj)
      console.log(arr);// 输出 [undefined, undefined, '1']
    let obj={
          2:'1',
          3:'2',
          7:'3',
          length:9
      }
      let arr =Array.from(obj)
      console.log(arr);// 输出 [undefined, undefined, '1', '2', undefined, undefined, undefined, '3', undefined]

三.将一个Map集合转化为数组
注:这个用法主要是使用map进行了数据管理,最后呢需要将这个map集合管理的东西传送给后台,后台要求需要传送一个数组过去,这个时候就需要将map集合转化为数组了

      let map = new Map();
      map.set(1,"这里是1")
      map.set(2,"这里是2")
      map.set(3,"这里是3")
      map.set(4,"这里是4")
      let arr=Array.from(map)
      console.log(arr); //输出[[1, '这里是1'],[2, '这里是2'],[3, '这里是3'],[4, '这里是4']]