Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 使用Lodash库提取密钥对_Json_Lodash - Fatal编程技术网

Json 使用Lodash库提取密钥对

Json 使用Lodash库提取密钥对,json,lodash,Json,Lodash,我有一个JSON对象 { "data":[ { "customer":101, "profile":7, "context":{ "rows":20, "from":"2016-01-05T06:14:02.750Z", "filter_group_id":null, "order":"desc",

我有一个JSON对象

{  
   "data":[  
      {  
         "customer":101,
         "profile":7,
         "context":{  
            "rows":20,
            "from":"2016-01-05T06:14:02.750Z",
            "filter_group_id":null,
            "order":"desc",
            "q":"host",
            "start":0,
            "source_group_id":null,
            "hi":"",
            "filters":[  

            ],
            "terms":"host",
            "source_group_name":null,
            "until":"2016-01-05T07:14:02.750Z"
         },
         "search_type":"searchui",
         "search_time":"2016-01-05 13:33:01",
         "id":724
      },
      {  
         "customer":101,
         "profile":7,
         "context":{  
            "rows":20,
            "from":"2016-01-05T06:14:02.750Z",
            "filter_group_id":null,
            "order":"desc",
            "q":"host",
            "start":0,
            "source_group_id":null,
            "hi":"",
            "filters":[  

            ],
            "terms":"host",
            "source_group_name":null,
            "until":"2016-01-05T07:14:02.750Z"
         },
         "search_type":"searchui",
         "search_time":"2016-01-05 13:26:42",
         "id":723
      }
   ]
}
我想使用lodash从上面的json数据中提取键值对,如下所示

我是洛达斯图书馆的新手。我读到了关于u.map、u.any的信息,但无法按照要求实施

预期的JSON对象:

[
    {
        "id":724
        "search_time":"2016-01-05 13:33:01",
        "filters":[],
        "from":"2016-01-05T06:14:02.750Z",
        "until":"2016-01-05T07:14:02.750Z"
        "terms":"host",
        "source_group_name":null,
    },
    {
        "id":723
        "search_time":"2016-01-05 13:26:42",
        "filters":[],
        "from":"2016-01-05T06:14:02.750Z",
        "until":"2016-01-05T07:14:02.750Z",
        "terms":"host",
        "source_group_name":null,
    }
]

应该是这样的:

var newArray = [];
_.each(data, function(item){
    newArray.push({
       "id":item.id
        "search_time":item.search_time,
        "filters":context.filters,
        ...etc...
    });
});

我不知道这是否是一种更有效的方式,但我认为它是有效的

 var dataFilter = _.map(data, function(value){
    return _.merge(
          _.pick(value.context, 'filters', 'from', 'until', 'terms', 'source_group_name'),
          _.pick(value, 'id', 'search_time')
    );
 });