将分层对象转换为JSON并通过Javascript返回

时间:2017-12-15 06:39:35

标签: javascript arrays json object stringify

我试图在我的程序中保存状态。

有一个庞大的GameAssets数组。各种资产可以是卡片,骰子和其他游戏块。每张卡可能有一个或多个CardFaces,每张CardFace都有文字和图像。

以后会有更多的作品,但现在已经足够了。

GameAssets是一个对象数组,它给出了: [PokerCard] 0:PokerCard {location:Vertex,dimension:Vertex,locked:false,direction:0,faces:Array(2),...} ...

JSON.stringify(gameAssets)产生

[
   {
      "location":{
         "x":0.5,
         "y":0.25
      },
      "dimensions":{
         "x":6.25,
         "y":8.75
      },
      "locked":false,
      "direction":0,
      "faces":[
         {
            "textFields":[
               {
                  "text":"Sword",
                  "location":{
                     "x":0.5,
                     "y":0.5
                  },
                  "dimensions":{
                     "x":1,
                     "y":1
                  },
                  "fontSize":1,
                  "align":"center",
                  "color":"black"
               }
            ],
            "backgroundColor":"white",
            "border":{
               "width":1,
               "color":"black"
            },
            "location":{
               "x":0.5,
               "y":0.25
            },
            "dimensions":{
               "x":6.25,
               "y":8.75
            }
         },
         {
            "textFields":[

            ],
            "backgroundColor":"gray",
            "border":{
               "width":1,
               "color":"black"
            },
            "location":{
               "x":0.5,
               "y":0.25
            },
            "dimensions":{
               "x":6.25,
               "y":8.75
            }
         }
      ],
      "activeFace":0,
      "orientation":"Portrait"
   }
]

最后JSON.parse(JSON.stringify(gameAssets))回馈 {location:{...},尺寸:{...},已锁定:false,方向:0,面孔:数组(2),...}

如何正确维护我的对象,

x == JSON.parse(JSON.stringify(x)) 

谢谢!

0 个答案:

没有答案