20.03.2014 18:10 | Aktualizacja: 25.01.2023 21:04

JSONSelect – zabawa formatem JSON przy użyciu selektorów CSS

Praca z danymi w formacie JSON może przysporzyć niekiedy sporo problemów. Nie raz miewałem problemy z wyciągnięciem co ciekawszych informacji z takich plików, jednak napisanie rozbudowanych metod wybierania danych jest zadaniem dosyć pracochłonnym. Na szczęście są ludzie, którzy tworzą narzędzia na wzór JSONSelect.

json select

Praca z danymi w formacie JSON może przysporzyć niekiedy sporo problemów. Nie raz miewałem problemy z wyciągnięciem co ciekawszych informacji z takich plików, jednak napisanie rozbudowanych metod wybierania danych jest zadaniem dosyć pracochłonnym. Na szczęście są ludzie, którzy tworzą narzędzia na wzór JSONSelect.

JSONSelect to „eksperymentalny język selektorów dla JSON” jak możemy przeczytać na stronie projektu. Dzięki niemu możemy w prosty sposób pobierać dane z formatu JSON przy użyciu selektorów podobnych do tych, które znamy z kaskadowych arkuszy stylów. Dzięki nim nie musimy tworzyć rozbudowanych odwołań do obiektów, czy pisać własnych funkcji przeszukujących dokument.

Chcemy dostać wszystkie imiona z naszej rodziny? Korzystamy z selektora .name. A może chcemy tylko imiona dzieci? Nie ma sprawy! JSONSelect pozwoli nam pobrać je przy pomocy selektora .child > .name. Język pozwala także przeszukiwać dokumenty JSON pod kątem typów danych. Na chwile obecną do dyspozycji jest ich sześć (object, array, number, string, boolean i null), jednak nie wykluczone, że kiedyś ta liczba się zwiększy, ponieważ JSONSelect to projekt open source. Każdy może przyczynić się do jego rozwoju poprzez GitHub.

Demo Pobierz

Nie wiem jak Wy, ale ja mam już kilka pomysłów na wykorzystanie tego narzędzia. Jak sam autor podaje na stronie projektu, język selektorów JSON jest w fazie mocno eksperymentalnej (dokumentacja JSONSelect jest jeszcze niepełna, więc należy mocno analizować przykłady w repozytorium GitHub). Mimo wszystko nie widzę przeciwwskazań, by pobawić się tym rozwiązaniem – a nuż pomożecie w rozwijaniu tego bądź co bądź standardu? Ja już się nim bawię. Dołączcie do mnie, pobierzcie i wyciskajcie z niego ile tylko możecie. Ciekawe jak bardzo rozbudowane selektory potraficie stworzyć ;)

Autor: Konrad Przydział