UTILS.
100% w przeglądarce
⊞}

JSON spłaszczanie / rozwijanie

Spłaszcz zagnieżdżony JSON do kluczy w notacji kropkowej lub odtwórz zagnieżdżone obiekty z płaskich kluczy.

— wynik pojawi się tutaj —

O tym narzędziu

JSON Flatten / Unflatten to darmowe narzędzie działające w przeglądarce, które zamienia zagnieżdżony JSON w jednopoziomową mapę kluczy w notacji z kropkami i odbudowuje z tych płaskich kluczy zagnieżdżoną strukturę. Wklej JSON i wybierz kierunek: Spłaszcz (Flatten) zwija każdą ścieżkę do jednego płaskiego obiektu (na przykład user.name lub user.roles.0), a Rozwiń (Unflatten) rozkłada klucze z kropkami z powrotem na zagnieżdżone obiekty i tablice.

Oba kierunki parsują dane wejściowe za pomocą wbudowanego parsera JSON przeglądarki i formatują wynik z wcięciem dwóch spacji. Obiekty i tablice są przechodzone rekurencyjnie, elementy tablic zachowują swój indeks liczbowy w ścieżce, a wartości liściowe — ciągi znaków, liczby, wartości logiczne, null oraz puste obiekty lub tablice — pozostają niezmienione. Nieprawidłowy JSON wyświetla błąd w miejscu zamiast wyniku, a przycisk kopiowania umieszcza rezultat w schowku.

Wszystko działa lokalnie w JavaScripcie: bez przesyłania, bez kont, bez śledzenia i działa offline. Spłaszczanie przydaje się do zamiany konfiguracji na płaskie pary klucz/wartość, takie jak zmienne środowiskowe czy pliki komunikatów i18n, do porównywania (diff) głęboko zagnieżdżonych ładunków lub do przekształcania odpowiedzi API, a rozwijanie odwraca to samo odwzorowanie.

Najczęściej zadawane pytania

Jak obsługiwane są tablice?
Elementy tablic używają w kluczu swojego indeksu liczbowego, np. items.0.name. Przy rozwijaniu każdy segment ścieżki złożony wyłącznie z cyfr jest traktowany jako indeks tablicy, więc te części są odbudowywane jako tablice.
Czy moje dane są wysyłane?
Nie. Parsowanie i konwersja odbywają się w całości w JavaScripcie przeglądarki, nic nie jest wysyłane na serwer, a narzędzie działa offline.
Co dzieje się z pustymi obiektami i tablicami?
Są traktowane jako wartości liściowe i zachowywane bez zmian przy swoim kluczu, więc puste {} lub [] przetrwa spłaszczanie w niezmienionej postaci, zamiast być rozwijane na głębsze klucze.
Czy spłaszczenie, a następnie rozwinięcie zawsze zwraca oryginalny JSON?
Prawie zawsze, ale dwa przypadki różnią się: klucz, który już zawiera kropkę, przy rozwijaniu rozdziela się na dodatkowe zagnieżdżenie, a klucz obiektu złożony wyłącznie z cyfr jest odbudowywany jako indeks tablicy zamiast klucza obiektu.

Więcej narzędzi