2016-10-20 5 views
1

Ich habe versucht, meine Daten in chronologischer Reihenfolge zu sortieren, aber es scheint nicht zu funktionieren.Warum sortBy() nicht funktioniert

var data = JSON.parse(body); 
_.sortBy(data,function(a){ 
    return a.results; 
}); 

Noch ist die Ausgabe, die ich bekomme, immer noch falsch. Die letzten Einträge sind nicht an der richtigen Stelle. Die gelesenen Daten sind so.

{ "count": 56, "Ergebnisse": [{ "Datum": "2014-06-05T18: 02: 51", "id": "LC8_L1T_TOA/LC80370352014156LGN01"}, { "date" : "2014-06-21T18: 02: 55", "id": "LC8_L1T_TOA/LC80370352014172LGN00"}, {"Datum": "2014-07-07T18: 03: 03", "id": "LC8_L1T_TOA/LC80370352014188LGN00" }, {"Datum": "2014-07-23T18: 03: 05", "id": "LC8_L1T_TOA/LC80370352014204LGN00"}, {"Datum": "2014-08-08T18: 03: 14", "id" : "LC8_L1T_TOA/LC80370352014220LGN00"}, {"Datum": "2014-08-24T18: 03: 17", "ID": "LC8_L1T_TOA/LC80370352014236LGN00"}, {"Datum": "2014-09-09T18: 03: 21 "," id ":" LC8_L1T_TOA/LC80370352014252LGN00 "}, {" Datum ":" 2014-09-25T18: 03: 18 "," id ":" LC8_L1T_TOA/LC80370352014268LGN00 "}, {" Datum ":" 2014- 10-11T18: 03: 25 "," ID ":" LC8_L1T_TOA/LC80370352014284LGN00 "}, {" Datum ":" 2014-10-27T18: 03: 23 "," ID ":" LC8_L1T_TOA/LC80370352014300LGN00 "}, {" Datum ":" 2014-11-12T18: 03: 26 "," id ":" LC8_L1T_TOA/LC80370352014316LGN00 "}, {" Datum ":" 2014-11-28T18: 03: 24 "," ID ":" LC8_L1T_TOA/LC80370352014332LGN00 "}, {" Datum ":" 2014-12-14T18: 03 : 18 "," id ":" LC8_L1T_TOA/LC80370352014348LGN00 "}, {" Datum ":" 2014-12-30T18: 03: 14 "," id ":" LC8_L1T_TOA/LC80370352014364LGN00 "}, {" Datum ":" 2015 -01-15T18: 03: 14 "," id ":" LC8_L1T_TOA/LC80370352015015LGN00 "}, {" Datum ":" 2015-01-31T18: 03: 10 "," id ":" LC8_L1T_TOA/LC80370352015031LGN00 "}, { "Datum": "2015-02-16T18: 03: 01", "id": "LC8_L1T_TOA/LC80370352015047LGN00"}, {"Datum": "2015-03-04T18: 02: 56", "id": "LC8_L1T_TOA/LC80370352015063LGN00 "}, {" Datum ":" 2015-03-20T18: 02: 46 "," id ":" LC8_L1T_TOA/LC80370352015079LGN00 "}, {" Datum ":" 2015-04-05T18: 02: 35 ", "id": "LC8_L1T_TOA/LC80370352015095LGN00"}, {"Datum": "2015-04-21T18: 02: 34", "id": "LC8_L1T_TOA/LC80370352015111LGN00"}, {"Datum": "2015-05-07T18 : 02: 18 "," id ":" LC8_L1T_TOA/LC80370352015127LGN00 "}, {" Datum ":" 2015-05-23T18: 02: 16 "," id ":" LC8_L1T_TOA/LC80370352015143LGN00 "}, {" Datum ": "2015-06-08T18: 02: 26", "id": "LC8_L1T_ TOA/LC80370352015159LGN00 "}, {" Datum ":" 2015-06-24T18: 02: 32 "," ID ":" LC8_L1T_TOA/LC80370352015175LGN00 "}, {" Datum ":" 2015-07-10T18: 02: 43 " , "id": "LC8_L1T_TOA/LC80370352015191LGN00"}, {"Datum": "2015-07-26T18: 02: 49", "id": "LC8_L1T_TOA/LC80370352015207LGN00"}, {"Datum": "2015-08- 11T18: 02: 53 "," id ":" LC8_L1T_TOA/LC80370352015223LGN00 "}, {" Datum ":" 2015-08-27T18: 03: 00 "," id ":" LC8_L1T_TOA/LC80370352015239LGN00 "}, {" Datum " : "2015-09-12T18: 03: 07", "id": "LC8_L1T_TOA/LC80370352015255LGN00"}, {"Datum": "2015-09-28T18: 03: 13", "id": "LC8_L1T_TOA/LC80370352015271LGN00" }, {"Datum": "2015-10-14T18: 03: 13", "id": "LC8_L1T_TOA/LC80370352015287LGN00"}, {"Datum": "2015-10-30T18: 03: 19", "id" : "LC8_L1T_TOA/LC80370352015303LGN00"}, {"Datum": "2015-11-15T18: 03: 19", "ID": "LC8_L1T_TOA/LC80370352015319LGN00"}, {"Datum": "2015-12-01T18: 03: 21 "," id ":" LC8_L1T_TOA/LC80370352015335LGN00 "}, {" Datum ":" 2015-12-17T18: 03: 21 "," id ":" LC8_L1T_TOA/LC80370352015351LGN00 "}, {" Datum ":" 2016- 01-02T18: 03: 18 "," id ":" LC8_L1T_TOA/LC803703 52016002LGN00 "}, {" Datum ":" 2016-01-18T18: 03: 18 "," ID ":" LC8_L1T_TOA/LC80370352016018LGN00 "}, {" Datum ":" 2016-02-03T18: 03: 15 "," ID ":" LC8_L1T_TOA/LC80370352016034LGN00 "}, {" Datum ":" 2016-02-19T18: 03: 06 "," ID ":" LC8_L1T_TOA/LC80370352016050LGN00 "}, {" Datum ":" 2016-03-06T18: 03:05 "," id ":" LC8_L1T_TOA/LC80370352016066LGN00 "}, {" Datum ":" 2016-03-22T18: 02: 58 "," id ":" LC8_L1T_TOA/LC80370352016082LGN00 "}, {" Datum ":" 2016-04-07T18: 02: 50 "," id ":" LC8_L1T_TOA/LC80370352016098LGN00 "}, {" Datum ":" 2016-04-23T18: 02: 43 "," id ":" LC8_L1T_TOA/LC80370352016114LGN00 "}, {"Datum": "2016-05-09T18: 02: 46", "ID": "LC8_L1T_TOA/LC80370352016130LGN00"}, {"Datum": "2016-05-25T18: 02: 50", "ID": " LC8_L1T_TOA/LC80370352016146LGN00 "}, {" Datum ":" 2016-06-10T18: 02: 54 "," ID ":" LC8_L1T_TOA/LC80370352016162LGN00 "}, {" Datum ":" 2016-06-26T18: 03: 01 " , "id": "LC8_L1T_TOA/LC80370352016178LGN00"}, {"Datum": "2016-07-12T18: 03: 09", "ID": "LC8_L1T_TOA/LC80370352016194LGN00"}, {"Datum": "2016-07- 28T18: 03: 13 "," id ":" LC8_L1T_TOA/LC80370352016210LGN0 0 "}, {" Datum ":" 2016-08-13T18: 03: 15 "," ID ":" LC8_L1T_TOA/LC80370352016226LGN00 "}, {" Datum ":" 2016-08-29T18: 03: 23 "," ID ":" LC8_L1T_TOA/LC80370352016242LGN00 "}, {" Datum ":" 2016-09-14T18: 03: 26 "," ID ":" LC8_L1T_TOA/LC80370352016258LGN00 "}, {" Datum ":" 2016-09-30T18: 03:27 "," id ":" LC8_L1T_TOA/LC80370352016274LGN00 "}, {" Datum ":" 2016-04-30T18: 08: 59 "," id ":" LC8_L1T_TOA/LC80380352016121LGN00 "}, {" Datum ":" 2016-05-16T18: 08: 57" , "id": "LC8_L1T_TOA/LC80380352016137LGN00"}]}

Antwort

3

Sie müssen results sortieren, nicht das Objekt selbst. Die Sortierfunktion oder der Parameter muss in ein Array zur Verwendung von _.sortBy eingebunden werden.

sortedArray = _.sortBy(data.results, [function (a){ 
    return a.date; 
}]); 

oder

sortedArray = _.sortBy(data.results, ['date']); 

var data = { count: 56, results: [{ date: "2014-06-05T18:02:51", id: "LC8_L1T_TOA/LC80370352014156LGN01" }, { date: "2014-06-21T18:02:55", id: "LC8_L1T_TOA/LC80370352014172LGN00" }, { date: "2014-07-07T18:03:03", id: "LC8_L1T_TOA/LC80370352014188LGN00" }, { date: "2014-07-23T18:03:05", id: "LC8_L1T_TOA/LC80370352014204LGN00" }, { date: "2014-08-08T18:03:14", id: "LC8_L1T_TOA/LC80370352014220LGN00" }, { date: "2014-08-24T18:03:17", id: "LC8_L1T_TOA/LC80370352014236LGN00" }, { date: "2014-09-09T18:03:21", id: "LC8_L1T_TOA/LC80370352014252LGN00" }, { date: "2014-09-25T18:03:18", id: "LC8_L1T_TOA/LC80370352014268LGN00" }, { date: "2014-10-11T18:03:25", id: "LC8_L1T_TOA/LC80370352014284LGN00" }, { date: "2014-10-27T18:03:23", id: "LC8_L1T_TOA/LC80370352014300LGN00" }, { date: "2014-11-12T18:03:26", id: "LC8_L1T_TOA/LC80370352014316LGN00" }, { date: "2014-11-28T18:03:24", id: "LC8_L1T_TOA/LC80370352014332LGN00" }, { date: "2014-12-14T18:03:18", id: "LC8_L1T_TOA/LC80370352014348LGN00" }, { date: "2014-12-30T18:03:14", id: "LC8_L1T_TOA/LC80370352014364LGN00" }, { date: "2015-01-15T18:03:14", id: "LC8_L1T_TOA/LC80370352015015LGN00" }, { date: "2015-01-31T18:03:10", id: "LC8_L1T_TOA/LC80370352015031LGN00" }, { date: "2015-02-16T18:03:01", id: "LC8_L1T_TOA/LC80370352015047LGN00" }, { date: "2015-03-04T18:02:56", id: "LC8_L1T_TOA/LC80370352015063LGN00" }, { date: "2015-03-20T18:02:46", id: "LC8_L1T_TOA/LC80370352015079LGN00" }, { date: "2015-04-05T18:02:35", id: "LC8_L1T_TOA/LC80370352015095LGN00" }, { date: "2015-04-21T18:02:34", id: "LC8_L1T_TOA/LC80370352015111LGN00" }, { date: "2015-05-07T18:02:18", id: "LC8_L1T_TOA/LC80370352015127LGN00" }, { date: "2015-05-23T18:02:16", id: "LC8_L1T_TOA/LC80370352015143LGN00" }, { date: "2015-06-08T18:02:26", id: "LC8_L1T_TOA/LC80370352015159LGN00" }, { date: "2015-06-24T18:02:32", id: "LC8_L1T_TOA/LC80370352015175LGN00" }, { date: "2015-07-10T18:02:43", id: "LC8_L1T_TOA/LC80370352015191LGN00" }, { date: "2015-07-26T18:02:49", id: "LC8_L1T_TOA/LC80370352015207LGN00" }, { date: "2015-08-11T18:02:53", id: "LC8_L1T_TOA/LC80370352015223LGN00" }, { date: "2015-08-27T18:03:00", id: "LC8_L1T_TOA/LC80370352015239LGN00" }, { date: "2015-09-12T18:03:07", id: "LC8_L1T_TOA/LC80370352015255LGN00" }, { date: "2015-09-28T18:03:13", id: "LC8_L1T_TOA/LC80370352015271LGN00" }, { date: "2015-10-14T18:03:13", id: "LC8_L1T_TOA/LC80370352015287LGN00" }, { date: "2015-10-30T18:03:19", id: "LC8_L1T_TOA/LC80370352015303LGN00" }, { date: "2015-11-15T18:03:19", id: "LC8_L1T_TOA/LC80370352015319LGN00" }, { date: "2015-12-01T18:03:21", id: "LC8_L1T_TOA/LC80370352015335LGN00" }, { date: "2015-12-17T18:03:21", id: "LC8_L1T_TOA/LC80370352015351LGN00" }, { date: "2016-01-02T18:03:18", id: "LC8_L1T_TOA/LC80370352016002LGN00" }, { date: "2016-01-18T18:03:18", id: "LC8_L1T_TOA/LC80370352016018LGN00" }, { date: "2016-02-03T18:03:15", id: "LC8_L1T_TOA/LC80370352016034LGN00" }, { date: "2016-02-19T18:03:06", id: "LC8_L1T_TOA/LC80370352016050LGN00" }, { date: "2016-03-06T18:03:05", id: "LC8_L1T_TOA/LC80370352016066LGN00" }, { date: "2016-03-22T18:02:58", id: "LC8_L1T_TOA/LC80370352016082LGN00" }, { date: "2016-04-07T18:02:50", id: "LC8_L1T_TOA/LC80370352016098LGN00" }, { date: "2016-04-23T18:02:43", id: "LC8_L1T_TOA/LC80370352016114LGN00" }, { date: "2016-05-09T18:02:46", id: "LC8_L1T_TOA/LC80370352016130LGN00" }, { date: "2016-05-25T18:02:50", id: "LC8_L1T_TOA/LC80370352016146LGN00" }, { date: "2016-06-10T18:02:54", id: "LC8_L1T_TOA/LC80370352016162LGN00" }, { date: "2016-06-26T18:03:01", id: "LC8_L1T_TOA/LC80370352016178LGN00" }, { date: "2016-07-12T18:03:09", id: "LC8_L1T_TOA/LC80370352016194LGN00" }, { date: "2016-07-28T18:03:13", id: "LC8_L1T_TOA/LC80370352016210LGN00" }, { date: "2016-08-13T18:03:15", id: "LC8_L1T_TOA/LC80370352016226LGN00" }, { date: "2016-08-29T18:03:23", id: "LC8_L1T_TOA/LC80370352016242LGN00" }, { date: "2016-09-14T18:03:26", id: "LC8_L1T_TOA/LC80370352016258LGN00" }, { date: "2016-09-30T18:03:27", id: "LC8_L1T_TOA/LC80370352016274LGN00" }, { date: "2016-04-30T18:08:59", id: "LC8_L1T_TOA/LC80380352016121LGN00" }, { date: "2016-05-16T18:08:57", id: "LC8_L1T_TOA/LC80380352016137LGN00" }] }, 
 
    sortedArray = _.sortBy(data.results, ['date']); 
 

 
console.log(sortedArray);
.as-console-wrapper { max-height: 100% !important; top: 0; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>

mit Array#sort Reihenfolge, in situ.

var data = { count: 56, results: [{ date: "2014-06-05T18:02:51", id: "LC8_L1T_TOA/LC80370352014156LGN01" }, { date: "2014-06-21T18:02:55", id: "LC8_L1T_TOA/LC80370352014172LGN00" }, { date: "2014-07-07T18:03:03", id: "LC8_L1T_TOA/LC80370352014188LGN00" }, { date: "2014-07-23T18:03:05", id: "LC8_L1T_TOA/LC80370352014204LGN00" }, { date: "2014-08-08T18:03:14", id: "LC8_L1T_TOA/LC80370352014220LGN00" }, { date: "2014-08-24T18:03:17", id: "LC8_L1T_TOA/LC80370352014236LGN00" }, { date: "2014-09-09T18:03:21", id: "LC8_L1T_TOA/LC80370352014252LGN00" }, { date: "2014-09-25T18:03:18", id: "LC8_L1T_TOA/LC80370352014268LGN00" }, { date: "2014-10-11T18:03:25", id: "LC8_L1T_TOA/LC80370352014284LGN00" }, { date: "2014-10-27T18:03:23", id: "LC8_L1T_TOA/LC80370352014300LGN00" }, { date: "2014-11-12T18:03:26", id: "LC8_L1T_TOA/LC80370352014316LGN00" }, { date: "2014-11-28T18:03:24", id: "LC8_L1T_TOA/LC80370352014332LGN00" }, { date: "2014-12-14T18:03:18", id: "LC8_L1T_TOA/LC80370352014348LGN00" }, { date: "2014-12-30T18:03:14", id: "LC8_L1T_TOA/LC80370352014364LGN00" }, { date: "2015-01-15T18:03:14", id: "LC8_L1T_TOA/LC80370352015015LGN00" }, { date: "2015-01-31T18:03:10", id: "LC8_L1T_TOA/LC80370352015031LGN00" }, { date: "2015-02-16T18:03:01", id: "LC8_L1T_TOA/LC80370352015047LGN00" }, { date: "2015-03-04T18:02:56", id: "LC8_L1T_TOA/LC80370352015063LGN00" }, { date: "2015-03-20T18:02:46", id: "LC8_L1T_TOA/LC80370352015079LGN00" }, { date: "2015-04-05T18:02:35", id: "LC8_L1T_TOA/LC80370352015095LGN00" }, { date: "2015-04-21T18:02:34", id: "LC8_L1T_TOA/LC80370352015111LGN00" }, { date: "2015-05-07T18:02:18", id: "LC8_L1T_TOA/LC80370352015127LGN00" }, { date: "2015-05-23T18:02:16", id: "LC8_L1T_TOA/LC80370352015143LGN00" }, { date: "2015-06-08T18:02:26", id: "LC8_L1T_TOA/LC80370352015159LGN00" }, { date: "2015-06-24T18:02:32", id: "LC8_L1T_TOA/LC80370352015175LGN00" }, { date: "2015-07-10T18:02:43", id: "LC8_L1T_TOA/LC80370352015191LGN00" }, { date: "2015-07-26T18:02:49", id: "LC8_L1T_TOA/LC80370352015207LGN00" }, { date: "2015-08-11T18:02:53", id: "LC8_L1T_TOA/LC80370352015223LGN00" }, { date: "2015-08-27T18:03:00", id: "LC8_L1T_TOA/LC80370352015239LGN00" }, { date: "2015-09-12T18:03:07", id: "LC8_L1T_TOA/LC80370352015255LGN00" }, { date: "2015-09-28T18:03:13", id: "LC8_L1T_TOA/LC80370352015271LGN00" }, { date: "2015-10-14T18:03:13", id: "LC8_L1T_TOA/LC80370352015287LGN00" }, { date: "2015-10-30T18:03:19", id: "LC8_L1T_TOA/LC80370352015303LGN00" }, { date: "2015-11-15T18:03:19", id: "LC8_L1T_TOA/LC80370352015319LGN00" }, { date: "2015-12-01T18:03:21", id: "LC8_L1T_TOA/LC80370352015335LGN00" }, { date: "2015-12-17T18:03:21", id: "LC8_L1T_TOA/LC80370352015351LGN00" }, { date: "2016-01-02T18:03:18", id: "LC8_L1T_TOA/LC80370352016002LGN00" }, { date: "2016-01-18T18:03:18", id: "LC8_L1T_TOA/LC80370352016018LGN00" }, { date: "2016-02-03T18:03:15", id: "LC8_L1T_TOA/LC80370352016034LGN00" }, { date: "2016-02-19T18:03:06", id: "LC8_L1T_TOA/LC80370352016050LGN00" }, { date: "2016-03-06T18:03:05", id: "LC8_L1T_TOA/LC80370352016066LGN00" }, { date: "2016-03-22T18:02:58", id: "LC8_L1T_TOA/LC80370352016082LGN00" }, { date: "2016-04-07T18:02:50", id: "LC8_L1T_TOA/LC80370352016098LGN00" }, { date: "2016-04-23T18:02:43", id: "LC8_L1T_TOA/LC80370352016114LGN00" }, { date: "2016-05-09T18:02:46", id: "LC8_L1T_TOA/LC80370352016130LGN00" }, { date: "2016-05-25T18:02:50", id: "LC8_L1T_TOA/LC80370352016146LGN00" }, { date: "2016-06-10T18:02:54", id: "LC8_L1T_TOA/LC80370352016162LGN00" }, { date: "2016-06-26T18:03:01", id: "LC8_L1T_TOA/LC80370352016178LGN00" }, { date: "2016-07-12T18:03:09", id: "LC8_L1T_TOA/LC80370352016194LGN00" }, { date: "2016-07-28T18:03:13", id: "LC8_L1T_TOA/LC80370352016210LGN00" }, { date: "2016-08-13T18:03:15", id: "LC8_L1T_TOA/LC80370352016226LGN00" }, { date: "2016-08-29T18:03:23", id: "LC8_L1T_TOA/LC80370352016242LGN00" }, { date: "2016-09-14T18:03:26", id: "LC8_L1T_TOA/LC80370352016258LGN00" }, { date: "2016-09-30T18:03:27", id: "LC8_L1T_TOA/LC80370352016274LGN00" }, { date: "2016-04-30T18:08:59", id: "LC8_L1T_TOA/LC80380352016121LGN00" }, { date: "2016-05-16T18:08:57", id: "LC8_L1T_TOA/LC80380352016137LGN00" }] }; 
 

 
data.results.sort(function (a, b) { 
 
    return a.date.localeCompare(b.date); 
 
}); 
 

 
console.log(data);
.as-console-wrapper { max-height: 100% !important; top: 0; }

+0

Es scheint noch nicht zu funktionieren. – John

+0

was funktioniert nicht? Das '_.sortBy' gibt das sortierte Array zurück. Es wird nicht in situ sortiert, wie 'Array # sort'. –

+0

Ich tat dies var sortedArray = []; sortedArray = _.sortBy (data.results, [Funktion (a) { Rückgabe a.date; }]); – John

0
var sampleData = 
    {"count": 56, 
    "results": 
     [{"date": "2015-06-05T18:02:51","id": "1"}, 
      {"date": "2014-06-21T18:02:55","id": "2"}, 
      {"date": "2016-07-07T18:03:03", "id": 3"},   
      {"date": "2008-07-23T18:03:05","id": "4"} 
     ]}; 

_.sortBy(sampleData.results,'date');