O tym narzędziu
Narzędzie Obiekt JS na ścisły JSON naprawia luźny literał obiektu JavaScript lub w stylu JSON5 w ścisły, prawidłowy JSON. Jest zbudowane na ręcznie napisanym tokenizerze — nigdy nie używa eval ani new Function — więc jest bezpieczne pod ścisłą Content Security Policy i bezpieczne do wklejania niezaufanego tekstu. Wszystko działa w Twojej przeglądarce.
Akceptuje rzeczy, które prawdziwy JSON odrzuca: klucze identyfikatorów bez cudzysłowów, łańcuchy w pojedynczych cudzysłowach, końcowe przecinki przed ] lub }, komentarze // liniowe i /* blokowe */, liczby szesnastkowe (0xFF), literały ósemkowe i binarne, liczby z wiodącym plusem i wiodącą kropką (+1, .5) oraz wartości undefined, NaN i Infinity. Klucze są ponownie ujmowane w cudzysłowy podwójne, łańcuchy są poprawnie ponownie zabezpieczane, komentarze i końcowe przecinki są usuwane, a liczby są normalizowane do zwykłych liczb JSON. Wybierasz, jak traktować undefined (konwertuj na null lub usuń klucz) i liczby nieskończone (konwertuj na null lub zgłoś błąd), a następnie wartość jest ponownie serializowana za pomocą JSON.stringify z wybranym wcięciem — 2 spacje, 4 spacje, tabulatory lub zminifikowane.
Gdy wejścia nie można sparsować, narzędzie zgłasza pierwszy błąd składni z jego wierszem i kolumną, abyś mógł szybko znaleźć problem. To uzupełnia ścisły formater JSON, który po prostu odrzuca luźne wejście — tutaj celem jest ocalenie skopiowanego wyjścia konsoli, fragmentów konfiguracji i ręcznie edytowanych obiektów w JSON, który zaakceptuje każdy parser.