Sign in Join
Wiki copytemporary

JSON/fi: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: JSON/fi

OldNewLine
1+## Yleistä
2+
3+[JSON](http://www.json.org) (JavaScript Object Notation) on datan esitysmuotoilu, joka tarjoaa standardoidun tiedonvaihtomuodon käyttämällä yksinkertaisesti tekstiä. Kuten nimestä voi päätellä, se alunperin pohjautui JavaScriptiin. Se on kuitenkin täysin kieliriippumaton. Lisäksi sitä on ihmisten helppo lukea ja kirjoittaa, sitä on myös helppo tietokoneiden jäsentää ja tuottaa.
4+
5+Verrattuna [[XML]]:ään , se on enemmän ihmisen luettavissa.
6+
7+## JSON Olio
8+
9+JSON olio ei ole mitään muuta kuin kokoelma pilkulla erotettuja nimi / arvo-pareja (kutsutaan usein jäseniksi) ne on suljettu aaltosulkeisiin:
10+
11+``` javascript
12+{"nimi1":arvo1, "nimi2":arvo2 ...}
13+```
14+
15+Jotta ihmisten olisi helpompi lukea ja havannoida ne niin nimi / arvo-parit ovat usein luetteloitu pystysuoraan:
16+
17+``` javascript
18+{
19+ "nimi1": arvo1,
20+ "nimi2": arvo2
21+}
22+```
23+
24+Nimi on merkkijono lainausmerkkien välissä, kun taas arvo voi olla jokin seuraavista:
25+
26+- yksinkertainen merkkijono, numeerinen, boolean tai null arvo (merkkijono lainausmerkkien välissä):\
27+ `{"id":1, "name":"John Doe", "married":false}`
28+
29+- taulukko, mikä on kokoelma pilkulla erotetuilla arvoilla hakasulkeiden välissä:\
30+ `{"primeNumbers":[2, 3, 5, 7, 11, 13, 17], "oddNumbers":[1,3,5,7]}`
31+
32+- olio, mikä on kokoelma nimi / arvo-parit aaltosulkeiden välissä:\
33+ `{"address":{"street":"145 Koinange Street", "City":"Nairobi", "Country":"Kenya"}}`
34+
35+JSON oliot voi muodostua myös useista sisäkkäisistä kerroksista jolloin niistä tulee entistä monimutkaisempia olioita:
36+
37+``` javascript
38+{"user":
39+ { "userid": 1900,
40+ "username": "jsmith",
41+ "password": "secret",
42+ "groups": [ "admins", "users", "maintainers"]
43+ }
44+}
45+```
46+
47+## Validi JSON muoto
48+
49+On olemassa muutamia sääntöjä ja ohjeita, joissa määritellään JSON syntaksi (katso RFC 4627 ):
50+
51+There are a few rules and guidelines that define the JSON syntax (see RFC 4627):
52+
53+- JSON oliot on kapseloitu aaltosulkujen väliiin `{ }` . Tyhjä olio voidaan esittää `{ }`.
54+- Taulukot on kapseloitu hakasulkujen väliin `[ ]` . Tyhjä joukko voidaan esittää `[ ]`
55+- Jäsenet muodostavat avainarvoparin.
56+- Avain on lainausmerkkien välissä.
57+- Kukin jäsen pitäisi sisältää yksilöllisen avaimen.
58+- Jos arvo on merkkijono niin se on oltava lainausmerkkien välissä.
59+- Boolean arvot esitetään **true** tai **false** sanoilla (vain pienet kirjaimet sallittu).
60+- Numero arvot esitetään käyttämällä kaksinkertaista (double) tarkkuutta liukulukuja muodossa. Tieteellinen merkintätapa on tuettu. Numeroissa ei pitäisi olla etunollia.
61+- "Offensive" -merkit esitetään käyttämällä kenoviivamerkkiä
62+- Null/tyhjät/Nil arvot esitetään **null** sanalla (vain pienet kirjaimet sallittu).
63+- Muut objektityypit, kuten päivämääriä, ei tueta. Ne on muunnettava esim. käyttämällä merkkijonoja.
64+- Jokainen jäsen olion tai kunkin matriisin arvon jälkeen on seurattava pilkku jos se ei ole viimeinen.
65+- JSON-tiedostojen tiedostopääte on **.json**
66+- MIME tyyppi json tiedostoilla on **application/json**
67+
68+## Toteutukset
69+
70+JSON toteutukset ei ole kovin tiukkoja, paljon liikkumavaraa myönnetään asiakassovellukselle ja / tai jäsentimelle joka valvoo suuntaviivoja. Yleisesti kun kirjoitat koodi
71+
72+- Ole sallivainen mitä hyväksyt
73+- Ole tiukka (noudata tiukasti standardia) mitä lähetät eteenpäin
74+
75+On olemassa kaksi päätoteutusta JSONin käytöstä:
76+
77+### Virallinen JSON syntaksi
78+
79+Tämä toteutus noudattaa tiukasti RFC 4627 suuntaviivoja ja ei salli siitä poikkeamista.
80+
81+### Javascript syntaksi
82+
83+Tämä toteutus seuraa Javascript kieltä ja siten mahdollistaa muutaman poikkeamat viralliseen spesifikaatioon. Esimerkiksi:
84+
85+1. sallii lainausmerkittömät avaimet. Esimerkiksi `{name: "John Doe" }`
86+2. sallii heittomerkkien käytön avaimissa ja/tai merkkijonoissa sekä sallii niiden vapaamman käytön. Esimerkiksi `{'name': "John Doe", "language":'Pascal'}`
87+3. sallii viimeinen jäsen jälkeen perään pilkun taulukossa ja/tai oliossa. Esimerkiksi `{"keywords":["if","begin","for",], "IDEs":["Lazarus","fpIDE","MSEide"],}`
88+
89+## Katso myös
90+
91+- [[fcl-json]] pakkaus jossa on JSON toteutus FreePascal:n ja Lazarukseen.
92+- [Virallinen JSON web-sivu](http://www.json.org)
93+- [[Streaming JSON/de]] - (Alkuperäinen saksankielinen artikkeli)
94+- [[Streaming JSON]] - (englanninkielinen käännös saksankielisestä artikkelista )
95+
96+---
97+*From the Free Pascal wiki, page "JSON/fi", as it stood on 2015-09-28 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history