Map、Set、Array、Object相互转换

目录

Object转Map

Map转Object

Object转Array

Array转成Object

Array转Set

Set转Array

Array转Map


原生js能够支持这几种类型数据格式之间的转换,先了解下Object.entriesObject.FromEntries这两个原生方法的作用:

  • Object.entries获取对象的键值对
  • Object.FromEntries把键值对列表转成对象
  • Object.entriesObject.fromEntries之间是可逆的。

Object转Map

let obj={foo:'hello',bar:100};
let map=new Map(Object.entries(obj));
console.log(map)

Map转Object

let map=new Map([['foo','hello'],['bar',100]]);
let obj=Object.fromEntries(map);
console.log(obj);

Object转Array

let obj={'foo':'hello','bar':100};
let arr=Object.entries(obj);
console.log(arr);

Array转成Object

let arr=[['foo','hello'],['bar',100]];
let obj=Object.fromEntries(arr);
console.log(obj);

Array转Set

let arr=[['foo','hello'],['bar',100]];
let set=new Set(arr);
console.log(set)

Set转Array

let set = new Set(['foo', 'hello', 'bar']);
let arr = [...set];
console.log(arr)

Array转Map

const arr = [{
        id: 1,
        goodNo: '1001'
      }, {
        id: 2,
        goodNo: '1002'
      }, {
        id: 3,
        goodNo: '1003'
      }]
      const map = new Map()
      arr.forEach(item => {
        map.set(item.id, item)
      })
      console.log(map)

おすすめ

転載: blog.csdn.net/qq_41887214/article/details/121256528