Isifundo seJSON - Funda ukuthi uyisebenzisa kanjani iJSON ngeJavaScript

Kulesi sifundo, sizofunda nge-JSON. Sizomboza ukwakheka kwe-JSON, izinhlobo ezahlukahlukene zedatha nokuthi ungayisebenzisa kanjani i-JSON ngaphakathi kweJavaScript.

I-JSON ingenye yemiqondo ebaluleke kakhulu ongayifunda njengohlelo noma njenge-QA.

Kuwo wonke umsebenzi wakho wokuhlela uzosebenzisa i-JSON ngaso sonke isikhathi noma ngabe kwakha i-API, kudla i-API, noma kwakha amafayela wokuhlela wohlelo lwakho lokusebenza.




Yini iJSON

I-JSON emele ukubhalwa kwento yeJavaScript, imane iyifomethi yokumelwa kwedatha efana kakhulu neXML noma i-YAML.

Isetshenziswa kabanzi kuyo yonke i-inthanethi cishe kuyo yonke i-API eyodwa ozoyifinyelela, kanye namafayela wokumisa nezinto ezifana nemidlalo nabahleli bombhalo.


Isibonelo se-JSON:

#user.json {
'name': 'Steve',
'age': 43,
'isProgrammer' true,
'hobbies': ['Reading Java books', 'cooking', 'classic music'],
'friends': [{
'name': 'joey',
'age': 39,
'isProgrammer': false,
'friends': [...]
}] }


Kungani Usebenzisa i-JSON

Sisebenzisa i-JSON ngoba ilula kakhulu ukuthumela emuva naphambili kuzicelo ze-http nezimpendulo ngenxa yosayizi omncane wefayela.

Kulula ukufunda uma kuqhathaniswa nokuthile okufana neXML ngoba kuhlanzeke kakhulu futhi awekho amathegi amaningi okuvula nokuvala ongakhathazeka ngawo.

I-JSON ibuye ihlangane kahle kakhulu neJavaScript ngoba iJSON iqoqo nje leJavaScript, okusho ukuthi noma yini oyibhalayo kuJSON iyiJavaScript evumelekile.


Cishe lonke ulimi olulodwa olukhulu lunendlela ethile yokusebenza komtapo wezincwadi noma ukusebenza okwakhelwe ngaphakathi ukuze kuhlolwe izintambo ze-JSON zibe yizinto noma amakilasi alolo limi.

Lokhu kwenza ukusebenza kwedatha ye-JSON kube lula ngokwedlulele ngaphakathi kolimi lohlelo.



Izinhlobo Zedatha yeJSON

Manje njengoba sesiqonda ukuthi yini i-JSON nokuthi kungani kubalulekile, ake singene kwesinye se-syntax ethintekayo nezinhlobo zedatha ezingamelwa yi-JSON.

Njengoba sazi ukuthi i-JSON yifomethi yokumelwa kwedatha ngakho-ke sidinga ukukwazi ukumela izinhlobo ezithile zedatha ngaphakathi kwayo.


I-JSON natively iyasekela:

  • izintambo
  • izinombolo izinombolo zingaba kunoma iyiphi ifomethi noma ngabe ziyizinombolo zedesimali izinombolo eziphelele izinombolo ezingezinhle ngisho nezinombolo zokubhala zesayensi
  • ama-booleans okungaba yiqiniso noma amanga
  • null empeleni engamele lutho
  • Ukufika okungaba uhlu lwanoma yiziphi izinhlobo ezingenhla
  • Izinhloso into uhlobo oluyinkimbinkimbi kunazo zonke kepha olusetshenziswa kakhulu ngaphakathi kwe-json njengoba ikuvumela ukuthi umele idatha engamabhangqa wenani lokhiye


Isibonelo seJSON

Ake singene esibonelweni sendlela yokusebenzisa i-json ngaphakathi kwefayela.

Into yokuqala okudingeka uyenze ukudala ifayili nge- .json isandiso ekugcineni kwaso.

Sizokwakha user.json ifayela elinento yomsebenzisi emelwe njenge-JSON.


Ukwakha into sidinga ukusebenzisa ukuvula noma ukuvala ama-brace curly {} bese kuthi ngaphakathi kwalokho sizobeka wonke amapheya wenani lokhiye akha into yethu.

Yonke impahla eyodwa ngaphakathi kwe-JSON ingumbhangqa wenani lokhiye. Ukhiye kufanele uzungezwe kabili '' izingcaphuno zilandelwa ikholoni : bese inani lolo khiye.

Uma sinezimbhangqwana zamanani wokhiye amaningi, sidinga amakhoma , ukwahlukanisa konke okukodwa kokubili kwamanani wethu abalulekile, okufana nokuthi singawakha kanjani amalungu afanayo ngolimi olujwayelekile lohlelo.

Isibonelo Ifayela le-JSON

#user.json {
'name': 'Steve',
'age': 43,
'isProgrammer' true,
'hobbies': ['Reading Java books', 'cooking', 'classic music'],
'friends': [{
'name': 'joey',
'age': 39,
'isProgrammer': false,
'friends': [...]
}] }

Esibonelweni esingenhla, sinefayela elibizwa user.json. Ngaphakathi kwefayela sinezinhlobo ezahlukahlukene zedatha.


Izinkinobho zihlala zizungezwe izingcaphuno eziphindwe kabili. Kumanani, uhlobo lwentambo kuphela oluzungezwe izingcaphuno eziphindwe kabili.

Esibonelweni:

  • igama | | + _ |
  • iminyaka yobudala string
  • i-isProgrammer iyi integer
  • izinto zokuzilibazisa i- boolean
  • abangane yi- Array
Qaphela:Akunakhoma ekupheleni kwempahla yokugcina kufayela le-JSON noma into ye-JSON.

Ungayisebenzisa kanjani i-JSON String Ngaphakathi kweJavaScript

Ake sicabange ukuthi sinefayela le-JSON elibizwa Array of Objects okuluhlu lwezinto zenkampani:

companies.json

Esibonelweni esingenhla, sinezinto ezimbili zenkampani ngaphakathi kwamalungu afanayo we-JSON.

Manje ake sibone ukuthi singayisebenzisa kanjani i-JSON engenhla ngaphakathi kweJavaScript.

Ezimweni eziningi, sithola i-JSON njengeyunithi yezinhlamvu kunokuba yinto ye-JSON. Ukulingisa lokhu, simele i-JSON engenhla njengeyunithi yezinhlamvu ngaphakathi kweJavaScript.

Ifayela lethu le-html libukeka:

[
{
'name': 'Big corporate',
'numberOfEmployees': 1000,
'ceo': 'Neil',
'rating': 3.6
},
{
'name': 'Small startup',
'numberOfEmployees': 10,
'ceo': null,
'rating': 4.3
} ]

Uma sihlola ilogi yekhonsoli kumathuluzi wonjiniyela we-Chrome, okukhiphayo kuyafana nalokho okuboniswe ngezansi:

Isibonelo seJSON JavaScript

Ngemuva kwalokho singadlulisa i-JSON engenhla ngokucacisa ukuthi sifuna ukukhipha ini. Isibonelo, uma besifuna ukuthola igama lenkampani yokuqala kumalungu afanayo esizosebenzisa:


JSON Example

let companies =
`[
{

'name': 'Big corporate',

'numberOfEmployees': 1000,

'ceo': 'Neil',

'rating': 3.6
},
{

'name': 'Small startup',

'numberOfEmployees': 10,

'ceo': null,

'rating': 4.3
}
]`
console.log(JSON.parse(companies))

Ngokunjalo, ukuthola isilinganiso senkampani yesibili esizoyisebenzisa:

console.log(JSON.parse(
companies[0].name )) Output: Big corporate

Ungaguquguqula kanjani i-JavaScript Object ibe yi-JSON

Manje ake sithi sinento yeJavaScript efana naleyo eboniswe ngezansi:

console.log(JSON.parse(
companies[1].rating )) Output: 4.3

Ukuguqula into yeJavaScript ibe yiJSON sisebenzisa
JSON Example

var person = {
name: 'Brad',
age: 35
}
indlela:

stringify

Okukhiphayo kuyi-JSON evumelekile:

jsonPerson = JSON.stringify(person); Qaphela:{
'name': 'Brad',
'age': 35 }
ukuphrinta engachazwanga . Ukuthola inani, kufanele siguqule i-JSON ibuyele entweni yeJavaScript.

Ukwenza lo msebenzi ongenhla, sidinga ukuguqula i-JSON ibuyele entweni yeJavaScript.

Ungaguquguqula kanjani i-JSON Object ibe yiJavaScript

Ukuguqula into engenhla ye-JSON ibuyele emuva kuJavaScript, sisebenzisa i- console.log(jsonPerson.name) indlela:

parseQaphela:Manje uma sizamile jsPerson = JSON.parse(jsonPerson) sithola 'uBrad'.

Isibonelo Esiphelele

console.log(jsPerson.name)

Isifinyezo

  • I-JSON imele i-JavaScript Object Notation
  • Ifomethi yokushintshanisa idatha engasindi
  • Kususelwa kusethi engezansi yeJavaScript
  • Kulula ukufunda nokubhala
  • Ulimi luzimele
  • Ingadluliswa ngezilimi eziningi zokuhlela zanamuhla

Izinhlobo Zedatha:

  • Inombolo: Akukho mehluko phakathi kwenamba ne-float
  • Intambo: Umugqa wezinhlamvu ze-Unicode. Sebenzisa izingcaphuno eziphindwe kabili
  • I-Boolean: Yiqiniso noma amanga
  • Uhlu: Uhlu olu-odwa lwamanani angu-0 noma ngaphezulu ku-
    JSON Example

    var person = {
    name: 'Brad',
    age: 35
    }
    jsonPerson = JSON.stringify(person); //convert to JSON
    console.log(jsonPerson.name); //undefined
    jsPerson = JSON.parse(jsonPerson); //convert to JS Object
    console.log(jsPerson.name); //Brad
  • Into: Iqoqo eli -ordiwe lamabhangqa wokhiye / wenani
  • Akunalutho: Inani elingenalutho

Imithetho ye-JSON Syntax:

  • Isebenzisa ukhiye / ama-value pair - isb. []
  • Isebenzisa izingcaphuno eziphindwe kabili nxazonke KEY
  • Kufanele usebenzise izinhlobo zedatha ezicacisiwe
  • Uhlobo lwefayela ngu .json
  • Uhlobo lwe-MIME yi- “Application / json”

Ngiyethemba ukuthi uthole lokhu kufundiswa kwe-JSON nge-Javascript kuwusizo. Manje usungabhala amafayela we-JSON alula futhi ayinkimbinkimbi bese uxhumana nezintambo ze-JSON ngaphakathi kweJavaScript.