Muotoile ja sisennä JSON

tekee JSON-koodista luettavaa ja jäsenneltyä, helpottaen datansiirtojen lukemista palvelinten ja sovellusten välillä

Miksi JSON-muotoilu?

JSON-muotoilu tekee JSON-tiedoista luettavampia ja ymmärrettävämpiä kehittäjille ja käyttäjille. Tämä helpottaa virheenkorjausta, koodin katselmointia ja tietojen analysointia, erityisesti monimutkaisten ja suurten JSON-tiedostojen kohdalla. Hyvin muotoiltu JSON voidaan myös helpommin integroida dokumentteihin ja raportteihin.

Kuinka JSON muotoillaan

Muotoilusivulla voit muotoilla JSON-tiedostosi liittämällä sen sille varattuun tekstialueeseen tai lataamalla JSON-tiedoston.

Heti kun JSON on lähetetty, se muotoillaan ja näytetään tulosalueella. Jos JSON on virheellinen, näytetään virheilmoitus, jossa kerrotaan ongelman laatu.

Muotoillun JSON:n käyttö

Voit kopioida muotoillun JSON:n käyttämällä siihen tarkoitettua kopiointipainiketta. Tämä helpottaa JSON:n integroimista projekteihisi tai raportteihisi.

JSON-koodisi pitäisi näyttää tältä:


{
    "id": 12345,
    "name": "John Doe",
    "email": "johndoe@example.com",
    "address": {
        "street": "123 Main St",
        "city": "Springfield",
        "state": "IL",
        "postalCode": "62704",
        "country": "USA"
    },
    "phoneNumbers": [
        {
            "type": "home",
            "number": "555-1234"
        },
        {
            "type": "work",
            "number": "555-5678"
        }
    ],
    "orders": [
        {
            "orderId": 1001,
            "orderDate": "2023-06-01T14:30:00Z",
            "items": [
                {
                    "productId": 2001,
                    "productName": "Laptop",
                    "quantity": 1,
                    "price": 999.99,
                    "details": {
                        "manufacturer": "TechCorp",
                        "warranty": "2 years"
                    }
                },
                {
                    "productId": 2002,
                    "productName": "Mouse",
                    "quantity": 2,
                    "price": 25.50,
                    "details": {
                        "manufacturer": "GadgetCo",
                        "warranty": "1 year"
                    }
                }
            ],
            "totalAmount": 1051.49
        },
        {
            "orderId": 1002,
            "orderDate": "2023-06-10T10:15:00Z",
            "items": [
                {
                    "productId": 2003,
                    "productName": "Keyboard",
                    "quantity": 1,
                    "price": 45.99,
                    "details": {
                        "manufacturer": "KeyMasters",
                        "warranty": "3 years"
                    }
                }
            ],
            "totalAmount": 45.99
        }
    ],
    "preferences": {
        "newsletter": true,
        "notifications": {
            "email": true,
            "sms": false
        },
        "theme": "dark"
    },
    "lastLogin": "2024-06-14T09:30:00Z"
}

    

Usein kysytyt kysymykset

Mitä eroa on JSON-muotoilijalla, -validaattorilla ja -minifioijalla?

Muotoilija (beautifier) kirjoittaa kompaktin JSON:n uudelleen sisennettynä ja luettavana versiona. Validaattori tarkistaa vain, että syntaksi on spesifikaation (RFC 8259) mukainen ja ilmoittaa virheistä. Minifioija tekee päinvastoin kuin muotoilija: se poistaa kaikki välilyönnit tiedostokoon pienentämiseksi. Työkalumme yhdistää muotoilun ja validoinnin: jos JSON on virheellinen, virheilmoitus täsmentää ongelman sijainnin.

Hyväksyykö standardi-JSON kommentteja ja perässä olevia pilkkuja?

Ei. JSON-spesifikaatio (RFC 8259) kieltää ehdottomasti kommentit (// tai /* */) ja perässä olevat pilkut taulukon tai objektin viimeisen elementin jälkeen. Jos tarvitset niitä, tutustu JSON5- tai JSONC-muotoihin, jotka ovat laajennuksia, jotka hyväksyvät kommentit ja perässä olevat pilkut. Niitä käytetään muun muassa VS Coden ja TypeScriptin konfigurointitiedostoissa.

Miksi merkkijonoissa on käytettävä lainausmerkkejä?

JSON-spesifikaatio vaatii lainausmerkit (") kaikille merkkijonoille ja objektin avaimille. Heittomerkit (') eivät ole sallittuja, vaikka JavaScript ne hyväksyy. Yleinen virhe kopioitaessa JS-koodista on säilyttää heittomerkit: muotoilija ilmoittaa tällöin jäsennysvirheestä.

Kuinka käsitellä suuria lukuja tai erittäin tarkkoja desimaalilukuja?

JSON ei erottele kokonaislukuja ja liukulukuja: kaikki on number-tyyppiä. JavaScript-jäsentimet muuntavat ne automaattisesti Number-tyypiksi, joka menettää tarkkuutta arvon 2^53 jälkeen (kokonaisluvut) ja jonka liukulukutarkkuus on rajoitettu 15 merkitsevään numeroon. Pitkiä tunnisteita (Twitter ID, Discord snowflake) tai rahamääriä varten koodaa ne merkkijonoina ("123456789012345678") tarkkuuden säilyttämiseksi.

Mikä sisennys valita: 2 vai 4 välilyöntiä?

2 välilyönnin sisennys on hallitseva käytäntö (Prettier, ESLint-oletus, npm-käytännöt), ja se säilyy luettavana jopa erittäin sisäkkäisissä dokumenteissa. 4 välilyönnin sisennys sopii tasaisille dokumenteille, joissa pystysuuntainen tila auttaa lukemista. Tärkeintä on johdonmukaisuus samassa projektissa. Työkalumme käyttää oletusarvoisesti 4 välilyöntiä, mikä vastaa PHP:n json_encode(JSON_PRETTY_PRINT) -tulostusta.

Mitä tehdä, jos JSON sisältää Unicode-merkkejä tai emojeita?

JSON tukee natiivisti UTF-8-koodausta. Emojit, aksentit, CJK-merkit ja muut ei-latinalaiset kirjoitusjärjestelmät säilyvät sellaisinaan muotoillussa tulosteessa. Jos JSON käyttää Unicode-pakotusta (é sanassa é), se on edelleen pätevä, mutta muotoilija ei kirjoita sitä uudelleen natiivimerkiksi. Normalisoidaksesi sen, käytä tiukkaa jäsentintä, kuten JSON.parse, ja sen jälkeen JSON.stringify.

Pyyntöesimerkki

curl -X POST https://cdrn.fr/api/v1/tools/json-formatter/execute \
  -H "Content-Type: application/json" \
  -d '{"input":"..."}'

Syöteskeema

Kenttä Tyyppi Pakollinen Oletus
input text

Päätepisteet

  • GET https://cdrn.fr/api/v1/tools - listaa kaikki saatavilla olevat työkalut
  • GET https://cdrn.fr/api/v1/tools/json-formatter - hakee tämän työkalun skeeman
  • POST https://cdrn.fr/api/v1/tools/json-formatter/execute - suorittaa tämän työkalun JSON-payloadilla