59813


javascript では、 string => any なデータ構造は、ただのオブジェクト自身でそれを表すことが一般的かと思います。

[code]

    const strMap = {
      foo: 1,
      bar: 2
    };
    
    console.log(strMap["foo"]); // => 1
[/code]

今、そうではなく、任意のデータ型をキーとした、 map 構造を取り扱いたいと思いました。

[code]

    // こんなことがやりたい
    const someMap = {
      何かしらのオブジェクト1: 値１,
      何かしらのオブジェクト2: 値２
    };
    
    someMap.get(何かしらのオブジェクト1);  // 値1 を取得できる
    
[/code]

### 質問

  * javascript において、 string 以外をキーとしたマップデータ構造には、一般的に何が利用されますか？


CC BY-SA 4.0
2019-10-19T09:05:47.870
59810
2019-10-19T11:52:44.857
754
question
javascript node.js
javascript で文字列型以外からの map を利用したい


任意のデータ型をキーとする場合、 Map を使用することが出来ます。

[code]

    const yama = {name: "yama"};
    const tuki = {name: "tuki"};
    const a = Symbol(1);
    
    const objMap = new Map([
        [yama, "kawa"],
        [tuki, "suppon"],
        [1, "一"],
        ["1", "2"],
        [a, "syma"],
    ]);
    
    console.log(objMap.get(yama)); // => kawa
    console.log(objMap.get(tuki)); // => suppon
    console.log(objMap.get(1)); // => 一
    console.log(objMap.get("1")); // => World
    console.log(objMap.get(a)); // => syma
[/code]


CC BY-SA 4.0
2019-10-19T11:52:44.857
59813
2019-10-19T11:52:44.857
32986
59810
answer