技術ブログ

プログラミング、IT関連の記事中心

JavaScriptのMapオブジェクトをJSONに変換する方法

目次

JavaScriptのMapオブジェクトをJSONに変換する方法

JavaScriptのMapオブジェクトは非常に便利で、キーと値のペアを保持するための特別なコレクションです。
しかし、Mapを直接JSONに変換することはできません。
この記事では、MapオブジェクトをJSONに変換する方法を紹介します。

前提

以下のようなMapオブジェクトを考えてみましょう。

type Item = {
  name: string;
  type: string;
  display_name: string;
};

const result = new Map<string, Item[]>();

このMapにいくつかのデータを追加したいと思います。

result.set('key', [
  { name: "1", type: "b", display_name: "aa" }
]);

MapをJSONに変換する方法

次に、このMapをJSONに変換する方法について説明します。

  1. Mapを通常のオブジェクトに変換
    まず、Mapを通常のJavaScriptオブジェクトに変換します。
    これはObject.fromEntries関数を使用して行います。
const objFromMap = Object.fromEntries(result.entries());
  1. オブジェクトをJSONに変換
    次に、変換したオブジェクトをJSON.stringifyメソッドを使用してJSON文字列に変換します。
const jsonString = JSON.stringify(objFromMap);

この方法を使用すると、Mapオブジェクトを簡単にJSONに変換することができます。

まとめ

JavaScriptのMapオブジェクトは直接JSONに変換することはできませんが、いくつかのステップを経て簡単に変換することができます。
この技術を使用することで、データの永続化やAPIとの通信など、さまざまなシナリオでMapを効果的に使用することができます。