2017-08-02 2 views
3

私はデータフォームのデータベースを取得しており、回答日を賢明に送信したいと思います。オブジェクトごとにグループ化するにはjavascriptで日付を賢明にしますか?

私はグループで少し助けてほしいです。

は、私は私がnodejs、瞬間、LO-ダッシュを使用しています

var IWANT = [{ 
    date: "2017-07-26", 
    data: [{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-07-26T12:03:06.000Z", 
     "_id": "591c3bfcca93e86c3450a537" 
    },{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-07-26T12:03:010.000Z", 
     "_id": "591c3bfcca93e86c3450a537" 
    }] 
    }, { 
    date: "2017-05-18", 
    data: [{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-05-18T04:21:13.000Z", 
     "_id": "591d213b6878badb0621b840" 
    },{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-05-18T04:22:01.000Z", 
     "_id": "591d216a6878badb0621b842" 
    }] 
    }]; 

私は以下のようにようにしたい

var IHAVE = [{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-07-26T12:03:06.000Z", 
     "_id": "591c3bfcca93e86c3450a537" 
    }, { 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-05-18T04:21:13.000Z", 
     "_id": "591d213b6878badb0621b840" 
    }, { 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-07-26T12:03:010.000Z", 
     "_id": "591c3bfcca93e86c3450a537" 
    },{ 
     "foodId": "59031fdcd78c55b7ffda17fc", 
     "qty": 1, 
     "dateTime": "2017-05-18T04:22:01.000Z", 
     "_id": "591d216a6878badb0621b842" 
    }]; 

以下のようなオブジェクトを持っています。 私を助けてください。

答えて

2

これらの質問に対する一般的な解決策はgroupmapにある:答えのための

// Helper function to extract the date from a dateTime 
var date = function(d){ 
    return moment(d.dateTime).format('YYYY-MM-DD'); 
} 

// map a group to the required form 
var groupToSummary = function(group, date) { 
    return { 
     date: date, 
     data: group 
    } 
} 

var IWANT = _(IHAVE) 
    .groupBy(date) 
    .map(groupToSummary) 
    .value(); 
+0

おかげいますが、ES5で私を助けてくださいすることができます。私はES6を使用していません。 thanks –

+0

矢印関数を完全なファット関数定義に変換しました。 –

+0

回答ありがとうございます。できます :) –

関連する問題