Daten im JSON-Format können ziemlich komplex sein und die Analyse (Parsing) aufwendig machen. Nicht selten kommt dann der Wunsch nach einer Möglichkeit auf, die gewünschten Daten einfacher zu selektieren. Die erfreuliche Nachricht ist, dass es eine solche Möglichkeit in Form einer „selector engine“ gibt. Mit JSON Select können komplexe JavaScript-Objekte mit CSS-ähnlichen Selektoren durchforstet werden. Ich habe dazu ein kleines Beispiel vorbereitet.
JSONSelect, Beispiel 1
<script src="http://jsonselect.org/js/jsonselect.min.js"></script> <script> var json = '{"name":{"first":"Benny","last":"Neugebauer"}}'; var jso = JSON.parse(json); var selector = '.name .first'; window.jsel = JSONSelect; var matches = jsel.match(selector,jso); console.log(matches[0]); // Benny </script> |
JSONSelect, Beispiel 2
<script src="http://jsonselect.org/js/jsonselect.min.js"></script> <script> var json = '[{"name": "object_1","id": 1},{"name": "object_2","id": 3},{"name": "object_3"}]'; var jso = JSON.parse(json); var selector = 'object:has(.id)'; window.jsel = JSONSelect; var matches = jsel.match(selector,jso); console.log(matches); // object_1, object_2 </script> |