map結構轉為object結構


將map轉為object

const map = new Map([
  [1, 1],
  [2, 3]
])

map.set("kkk", "xiaokk")

function createObj(map) {
  const obj = new Object();
  map.forEach((item, key, map) => {
    obj[key] = item
  })

  return obj
}

console.log(createObj(map))

//{ '1': 1, '2': 3, kkk: 'xiaokk' }

  • myMap.forEach(callback[, thisArg])

資料解釋:forEach 方法將對 Map 中真實存在的每一個元素執行一次參數中提供的回調函數,它不會對任何已經被刪除的元素執行調用。然而,它還會對鍵存在而值為 undefined 的元素執行調用。
callback 函數有三個參數:

  • value - 元素的值
  • key - 元素的鍵
  • Map - 當前正在被遍歷的對象

objet轉為map

const map_2 = new Map()

for (const [key, value] of Object.entries(obj)) {
  map_2.set(key, value)
}

//Map { '1' => 1, '2' => 3, 'kkk' => 'xiaokk' }
  • 使用到Object.entries();

    • 方法返回一個給定對象自身可枚舉屬性的鍵值對數組,其排列與使用 for...in 循環遍歷該對象時返回的順序一致(區別在於 for-in 循環還會枚舉原型鏈中的屬性)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM