2016-05-07 11 views
1

Ich bin ein Neuling hier und lerne JS und JSON. Nun, ich habe die JSON-Daten als:Wie filtert man JSON-Daten über ein bestimmtes Feld aus?

{ 
     "month":"november", 
     "category":"coffee", 
     "price":50, 
     "name":"Pike Place Roast Brewed Coffee Verismo Pods", 
     "flavor":"flavored", 
     "count":5, 
     "roast":"medium", 
     "type":"regular" 
    }, 
    { 
     "month":"august", 
     "category":"coffee", 
     "price":40, 
     "name":"Starbucks VIA Ready Brew French Roast", 
     "flavor":"flavored", 
     "count":548, 
     "roast":"blonde", 
     "type":"decaffinated" 
    }, 
    { 
     "month":"november", 
     "category":"coffee", 
     "price":50, 
     "name":"Starbucks Caffé Verona Blend, Whole Bean", 
     "flavor":"flavored", 
     "count":5, 
     "roast":"medium", 
     "type":"regular" 
    }, 
    { 
     "month":"asia-pacific", 
     "category":"coffee", 
     "price":20, 
     "name":"Starbucks Caffè Verona K-Cup Pods", 
     "flavor":"flavored", 
     "count":3, 
     "roast":"dark", 
     "type":"regular" 
    }, 
    { 
     "month":"august", 
     "category":"coffee", 
     "price":40, 
     "name":"Milk Verismo Pods", 
     "flavor":"flavored", 
     "count":233, 
     "roast":"blonde", 
     "type":"decaffinated" 
    }, 
    { 
     "month":"november", 
     "category":"coffee", 
     "price":50, 
     "name":"Starbucks VIA Ready Brew Decaf Italian Roast", 
     "flavor":"flavored", 
     "count":5, 
     "roast":"medium", 
     "type":"regular" 
    }, 
    { 
     "month":"august", 
     "category":"coffee", 
     "price":40, 
     "name":"Guatemala Antigua Espresso Verismo Pods", 
     "flavor":"flavored", 
     "count":587, 
     "roast":"blonde", 
     "type":"decaffinated" 
    } 

Jetzt nehme ich alle Daten, die sich auf den Monat (zB November) erhalten möchten, wie kann ich dies in Javascript erreichen? Jede Hilfe wird geschätzt. Danke.

Antwort

0

Das ist nicht JSON, aber ich gehe davon aus, dass es ein partielles Array ist.

var result = theArray.filter(function(value){ 
    return value.month === "November"; // or whatever you filter on 
}); 

// result is now a filter array containing only month === 'November' 

Wie funktioniert es?

Filter wird über jedes Element im Array (value) gefiltert. Wenn Sie true zurückgeben, wird es dem neuen Array hinzugefügt. false ignoriert es (herausgefiltert)

+0

Vielen Dank! Das hat mir geholfen :) –

Verwandte Themen