JavaScript JSON
JSON — bu JavaScript Object Notation (JavaScript Obyekt Belgilanishi) so'zlarining qisqartmasi.
JSON — ma'lumotlarni saqlash va tashish (transportirovka) uchun ishlatiladigan oddiy matn formati.
JSON nima?
- JSON JavaScript obyektlarini yaratish sintaksisiga o'xshash.
- JSON ma'lumotlarni yuborish, qabul qilish va saqlash uchun ishlatiladi.
Misol
"{\"name\":\"John\", \"age\":30, \"car\":null}"Yuqoridagi misol 3 ta xususiyatga ega obyektni belgilaydi:
- "name": "John"
- "age": 30
- "car": null
Nima uchun JSON?
- JSON kompyuterlar orasida ma'lumot almashish va saqlashni osonlashtiradi.
- JSON faqat matndan iborat va dasturlash tillaridan mustaqil (language independent).
Eslatma
JSON sintaksisi JavaScript obyekt sintaksisidan kelib chiqqan, lekin JSON faqat matndir. JSON ma'lumotlarini o'qish va yaratish uchun kod istalgan dasturlash tilida (Python, PHP, Java, JS va h.k.) yozilishi mumkin.
JSON va JavaScript
JSON formati sintaktik jihatdan JavaScript obyektlarini yaratish kodiga aynan mos keladi. Shu sababli, JavaScript dasturi JSON ma'lumotlarini osongina mahalliy JavaScript obyektlariga aylantira oladi.
JavaScript-da JSON bilan ishlash uchun ikkita o'rnatilgan funksiya mavjud:
JSON.parse()— JSON matnini JavaScript obyektiga aylantiradi.JSON.stringify()— JavaScript obyektini JSON matniga aylantiradi.
Afzalliklari
- Serverdan toza matn qabul qilib, uni JavaScript obyekti sifatida ishlatishingiz mumkin.
- JavaScript obyektini serverga toza matn formatida yuborishingiz mumkin.
- Ma'lumotlar bilan murakkab tahlillarsiz (parsing) ishlash imkonini beradi.
Ma'lumotlarni saqlash
Ma'lumotlarni saqlashda u ma'lum bir formatda bo'lishi kerak va matn (text) har doim ruxsat etilgan formatlardan biridir. JSON JavaScript obyektlarini matn sifatida saqlash imkonini beradi.
JSON ma'lumotlari — Nom va Qiymat
JSON ma'lumotlari JavaScript obyekt xususiyatlari kabi nom/qiymat juftligi ko'rinishida yoziladi. Nom/qiymat juftligi maydon nomi (qo'shnoq ichida), undan keyin ikki nuqta va qiymatdan iborat:
"firstName":"John"Muhim
JSON-da nomlar (kalitlar) har doim qo'shtirnoq ichida bo'lishi shart. JavaScript-da esa bu shart emas.
JSON obyektlari
JSON obyektlari jingalak qavslar {} ichida yoziladi va bir nechta nom/qiymat juftliklarini o'z ichiga olishi mumkin:
{ "firstName": "John", "lastName": "Doe" }JSON massivlari
JSON massivlari kvadrat qavslar [] ichida yoziladi. Xuddi JavaScript-dagi kabi, massiv obyektlarni o'z ichiga olishi mumkin:
"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]JSON matnini JavaScript obyektiga aylantirish
Odatda JSON veb-serverdan ma'lumotlarni o'qish va ularni veb-sahifada ko'rsatish uchun ishlatiladi.
- Avval JSON sintaksisiga ega JavaScript matnini yarating:
let text =
'{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}'- So'ngra
JSON.parse()funksiyasi yordamida uni obyektga aylantiring:
const obj = JSON.parse(text)- Nihoyat, yangi obyektni sahifada ishlating:
<p id="demo"></p>
<script>
document.getElementById('demo').innerHTML =
obj.employees[1].firstName + ' ' + obj.employees[1].lastName
</script>