代码之家  ›  专栏  ›  技术社区  ›  Samira Arabgol

在javascript中将对象设置为键值的不可变映射(值是数组或列表)

  •  0
  • Samira Arabgol  · 技术社区  · 7 年前

    我有一个对象(myobj),我想将它设置为一个具有键值shape的不可变映射,值是一个列表或数组。

     const myObj = {
                    "a": 1,
                    "b": 2,
                };
    

    现在我要将此对象设置为:

    const x = Immutable.Map({
    "content": []
    })
    

    我怎样才能得到打击的结果?

    {"content": [
        {
          "a": 1,
          "b": 2,
        }
      ]
    }
    

    我已经尝试过:myobj=myobj.set(“content”,x),但这不会使内容值成为数组。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Code Maniac    7 年前

    Map 期待 [[K, V]] 用于添加值的结构 myObj.set("content", x) 是正确的 myObj 不是 地图 只是个简单的物体

    const myObj = {
      "a": 1,
      "b": 2,
    };
    
    const x = Immutable.Map([["content",[myObj]]])
    
    console.log(x)
    <script src="https://cdnjs.cloudflare.com/ajax/libs/immutable/3.8.2/immutable.js"></script>