Skip to main content
CheckTown
Konwertery

Konwerter JSON5 na JSON: porzadkowanie plikow konfiguracyjnych

Opublikowano 5 min czytania
W tym artykule

Czym jest JSON5?

JSON5 to nadzbior JSON, ktory dodaje funkcje inspirowane skladnia ECMAScript 5.1. Zostal stworzony, aby uczynic JSON bardziej przyjaznym dla plikow konfiguracyjnych i innych przypadkow, w ktorych ludzie pisza i czytaja JSON recznie. Kazdy prawidlowy dokument JSON jest rowniez prawidlowym JSON5, ale JSON5 dodaje komentarze, koncowe przecinki, klucze bez cudzyslowow i inne udogodnienia.

Specyfikacja JSON5 zostala sfinalizowana w 2018 roku i jest szeroko przyjeta w narzediach JavaScript. Narzedzia budowania, takie jak Babel, Next.js i Webpack, akceptuja pliki konfiguracyjne JSON5. Konwersja JSON5 do standardowego JSON jest konieczna przy wspolpracy z systemami, ktore rozumieja tylko scisly JSON, takimi jak API, bazy danych i wiekszosc jezykow programowania.

Funkcje JSON5 wyjasnienie

JSON5 dodaje kilka rozszerzen skladniowych, ktore ulatwiaja pisanie i utrzymywanie plikow konfiguracyjnych.

  • Komentarze — dozwolone sa komentarze jednowierszowe (//) i wielowierszowe (/* */), czyniace pliki konfiguracyjne samodokumentujacymi
  • Koncowe przecinki — tablice i obiekty moga miec przecinek po ostatnim elemencie, zmniejszajac szum w diffach
  • Klucze bez cudzyslowow — klucze obiektow bedace prawidlowymi identyfikatorami ECMAScript nie potrzebuja cudzyslowow
  • Liczby szesnastkowe — wartosci liczbowe mozna zapisywac jako 0xFF, przydatne dla kodow kolorow w konfiguracji
  • Ciagi wielowierszowe — wartosci ciagow moga obejmowac wiele wierszy z uzyciem kontynuacji odwrotnym ukosnikiem
  • Specjalne wartosci liczbowe — Infinity, -Infinity i NaN sa prawidlowymi literalami liczbowymi w JSON5

Wypróbuj za darmo — bez rejestracji

Konwertuj JSON5 na JSON →

Gdzie JSON5 jest uzywany

JSON5 jest uzywany glownie w narzediach ekosystemu JavaScript, gdzie pliki konfiguracyjne sa pisane i utrzymywane przez programistow.

  • Babel — pliki .babelrc i babel.config.json5 obsluguja skladnie JSON5 dla konfiguracji budowania z komentarzami
  • TypeScript — tsconfig.json obsluguje funkcje JSON5, takie jak komentarze i koncowe przecinki (technicznie JSONC)
  • Chrome DevTools — profile ograniczania sieci i inne ustawienia uzywaja formatu JSON5
  • Next.js — pliki konfiguracyjne akceptuja JSON5 dla przyjaznej konfiguracji z dokumentacja w linii

Czesto zadawane pytania

Czy przegladarki moga parsowac JSON5 natywnie?

Nie. Przegladarki obsluguja tylko standardowy JSON przez JSON.parse(). Aby parsowac JSON5 w przegladarce lub aplikacji Node.js, potrzebujesz pakietu npm json5. Narzedzia budowania obslugujace JSON5 wykonuja parsowanie wewnetrznie podczas etapu budowania.

Jaka jest roznica miedzy JSON5 a JSONC?

JSONC (JSON z komentarzami) dodaje tylko obsluge komentarzy do JSON. JSON5 to szerszy nadzbior, ktory dodaje komentarze, koncowe przecinki, klucze bez cudzyslowow, liczby szesnastkowe, ciagi wielowierszowe i specjalne wartosci liczbowe. tsconfig.json TypeScript i settings.json VS Code uzywaja JSONC, podczas gdy Babel i inne narzedzia uzywaja pelnego JSON5.

Czy JSON5 to to samo co YAML?

Nie. JSON5 pozostaje blisko skladni JSON z niewielkimi ergonomicznymi dodatkami. YAML to zupelnie inny format ze struktura oparta na bialych znakach, kotwicami i wieloma innymi funkcjami. JSON5 jest latwiejszy do konwersji na JSON, poniewaz jest scislym nadzbiorem. Konwersja YAML do JSON moze byc stratna, poniewaz YAML obsluguje typy danych, ktorych JSON nie ma.

Powiązane narzędzia