簡體   English   中英

使用Underscore.js解析json數組以進行映射

[英]Parsing the json array to map using Underscore.js

我有一個JSON數組,我想將其解析為map對象。 鍵應該是狀態,值應該是具有相同狀態的數組對象。 下面給出了示例json:

{
  "totalRec": 10,
  "content": [
    {
      "name": "Pradeep",
      "age": "24",
      "state": "KA"
    },
    {
      "name": "Praveen",
      "age": "30",
      "state": "KA"
    },
    {
      "name": "Navnish",
      "age": "32",
      "state": "GOA"
    },
    {
      "name": "Vinod",
      "age": "32",
      "state": "MH"
    },
    {
      "name": "Vikas",
      "age": "32",
      "state": "MH"
    },
    {
      "name": "Harry",
      "age": "44",
      "state": "MP"
    },
    {
      "name": "Linda",
      "age": "22",
      "state": "GOA"
    },
    {
      "name": "June",
      "age": "18",
      "state": "KA"
    },
    {
      "name": "Sachin",
      "age": "32",
      "state": "GOA"
    },
    {
      "name": "Arjun",
      "age": "30",
      "state": "UP"
    }
  ]
}

我嘗試使用Underscore.js並使用以下代碼:

  var some_map = _.object(_.map(data.content, function(item) {
            return [item.state, item]
        }));

但是上面的代碼沒有給我一個列表對象作為特定狀態的值。 我希望該值保留包含狀態作為鍵的所有對象。

您能告訴我我要去哪里了嗎?

看起來您在尋找_.groupBy()

只是

var byState = _.groupBy(data.content, "state");

應該給你一個形式的對象

{"GOA": [{"name": "Sachin", ...}, ...}, "UP": [...], ...}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM