JSON Formatlayıcı
JSON-u formatlayın, sıxın və yoxlayın — yaxud YAML və ya CSV-yə çevirin. Xətalar dəqiq sətir və sütunu göstərir, dörd ən çox rast gəlinən qüsur isə adıyla bildirilir.
JSON-un icazə vermədikləri
JSON, JavaScript obyekt sintaksisinin ciddi altçoxluğudur və fərqlər hamını tutur. Bunlar hamısı yanlışdır:
| Yanlış | Düzgün | Səbəb |
|---|---|---|
{name: "Ada"} | {"name": "Ada"} | Açarlar dırnaqda olmalıdır |
{'a': 1} | {"a": 1} | Yalnız cüt dırnaq |
[1, 2, 3,] | [1, 2, 3] | Sonda vergül olmaz |
{"a": 1} // qeyd | {"a": 1} | Şərh olmaz |
{"a": undefined} | {"a": null} | undefined JSON dəyəri deyil |
{"a": .5} | {"a": 0.5} | Əvvəldə rəqəm tələb olunur |
Dəqiqlik həddi
JSON özü ədədin ölçüsünə hədd qoymur, amma JavaScript hər ədədi 64 bitlik
sürüşən nöqtəli formata çevirir. 2⁵³ − 1-dən, yəni
9.007.199.254.740.991-dən sonra tam ədədlər səssizcə yuvarlaqlaşmağa
başlayır. 9007199254740993 yazın —
9007199254740992 qaytarır: buraya yapışdırılan 64 bitlik
verilənlər bazası ID-si nəzərəçarpmaz şəkildə səhv olacaq və heç bir
formatlayıcı bunun qarşısını ala bilməz.
Düzgün həll API tərəfindədir: böyük identifikatorları mətn kimi göndərin. Verilənlər bazasındaki ID ilə JSON-dakı ID arasında uyğunsuzluğu araşdırırsınızsa, yoxlanmalı ilk şey budur.
Tez-tez verilən suallar
JSON-um niyə oxunmur?
Demək olar ki, həmişə dörd şeydən biri: sonuncu elementdən sonra artıq vergül, cüt dırnaq yerinə tək dırnaq, dırnağa alınmamış açarlar və ya şərh. Dördü də JavaScript-də qanunidir və JSON-da qadağandır. Bu alət dəqiq sətir və sütunu göstərir və dördündən hansını tapdığını adıyla bildirir — mühərrikin ifadəsini oxumağa ehtiyac qalmır.
Məlumatım hara göndərilir?
Heç yerə. Oxuma və formatlama brauzerin öz JSON mühərriki ilə yerli olaraq aparılır. Bu alət üçün bunun səsləndiyindən daha çox əhəmiyyəti var — insanlar onlayn formatlayıcılara tokenlər, müştəri qeydləri və daxili identifikatorlar olan API cavablarını adətən elə-belə yapışdırırlar.
Formatlama ilə sıxma arasında fərq nədir?
İkisi eyni məlumatı verir. Formatlama girinti və sətir keçidləri əlavə edir ki, insan quruluşu oxuya bilsin; sıxma isə hər artıq boşluğu atır ki, yük mümkün qədər kiçik olsun. Ötürmə və saxlama üçün sıxın, oxumaq və müqayisə etmək üçün formatlayın.
Böyük ədədlərim niyə dəyişdi?
JavaScript ədədləri 64 bitlik sürüşən nöqtəlidir, ona görə 9.007.199.254.740.991-dən böyük hər tam ədəd dəqiqliyini itirir — 64 bitlik verilənlər bazası ID-ləri və snowflake tipli identifikatorlarla bu, adi problemdir. ID-ləriniz bu qədər böyükdürsə, API onları mətn kimi göndərməlidir. Bu, alətin deyil, JavaScript-dəki JSON-un məhdudiyyətidir.
Oxşar alətlər
- Diaqram və Blok-sxem QurucusuBlok-sxem və diaqram çəkin, qutuları özü marşrutlaşan oxlarla birləşdirin, düzülüşü avtomatik qurdurun. SVG ixracı var.
- Şifrə GeneratoruBrauzerin kriptoqrafik təsadüfi say generatoru ilə güclü şifrələr yaradın, gücünü dərhal görün.
- HTML Entity ÇeviriciMətni HTML üçün kodlayın və ya entity-ləri geri açın — markap pozucuları, adlı dəstlər, emojiyə qədər rəqəmsal istinadlar. Düz bir dəfə açır.