JSON.parse() metodi
JSON.parse() metodi
JSON.parse() metodi JSON matnini JavaScript qiymatiga o‘giradi.
Tahlil qilingandan so‘ng, qiymat boshqa har qanday JavaScript qiymati kabi ishlatilishi mumkin.
JSON - bu matn
JSON.parse() JSON matnini JavaScript qiymatiga o‘giradi.
Sintaksis
JSON.parse(text, reviver)
| Parametr | Tavsif |
|---|---|
| text | Tahlil qilinadigan JSON matni. |
| reviver | Tahlil qilingan qiymatlarni o‘zgartiruvchi ixtiyoriy funksiya. |
JSON obyektini parse qilish
JSON matnini JavaScript obyektiga o‘giring.
Misol
JSON obyekti JavaScript obyektiga aylanadi.
const text = '{"name":"John","age":30,"city":"New York"}';
const person = JSON.parse(text);
let name= person.name;
O‘zingiz sinab ko‘ring »
JSON massivini parse qilish
JSON matnini JavaScript massiviga o‘giring.
Misol
JSON massivi JavaScript massiviga aylanadi.
const text = '["Ford","Volvo","BMW"]';
const cars = JSON.parse(text);
let name= cars[0];
O‘zingiz sinab ko‘ring »
Tahlildan so‘ng siz oddiy JavaScript Array usullaridan foydalanishingiz mumkin.
Boshqa JSON qiymatlarini tahlil qilish
JSON.parse() istalgan yaroqli JSON qiymatini parse qila oladi.
| JSON Text | JavaScript Value |
|---|---|
| "John" | String |
| 42 | Number |
| true | Boolean |
| null | null |
| [1,2,3] | Array |
| {"x":1} | Object |
Misol
Har qanday JSON matnini JavaScript qiymatiga aylantiring.
let value;
value = JSON.parse('"John"');
value = JSON.parse('42');
value = JSON.parse('true');
value = JSON.parse('null');
O‘zingiz sinab ko‘ring »
JSON’ning keng tarqalgan qo‘llanilishi
JSON-dan keng tarqalgan foydalanish veb-serverga ma’lumotlarni almashishdir.
Veb-serverdan ma’lumotlarni qabul qilishda ma’lumotlar stringdir:
'{"name":"John", "age":30, "city":"New York"}'
Matnli stringni JavaScript obyektiga o‘girish uchun JSON.parse()’dan foydalaning:
const text = '{"name":"John", "age":30, "city":"New York"}';
const person = JSON.parse(text);
O‘z sahifangizdagi obyekt ma’lumotlaridan foydalaning:
Misol
<p id="demo"></p>
<script>
// Display it in your HTML page
document.getElementById("demo").innerHTML = person.name;
</script>
O‘zingiz sinab ko‘ring »
Reviver funksiyasi
Ixtiyoriy reviver argumenti tahlil qilingan ma’lumotlarni o‘zgartirish uchun ishlatiladigan callback funksiyasidir.
U ikkita argumentni qabul qiladi: xususiyat kaliti va uning Qiymati.
Qaytish parametri asl qiymatni almashtiradi:
- Qiymatni o‘zgartirish: O‘zgartirilgan qiymatni qaytaring.
- O‘zgarishsiz qoldirish: asl qiymatni qaytaring.
- Qiymatni o‘chirish: undefined qaytaring.
Misol
“30” stringini 30 raqamiga aylantiradi.
const text = '{"name":"John","age":"30"}';
const person = JSON.parse(text, function(key, value) {
// Convert the age to a number
if (key == "age") {
return Number(value);
}
// Return other keys/values unchanged
return value;
});
typeof person.age; // number
O‘zingiz sinab ko‘ring »
JSON Date obyektlarini qo‘llab-quvvatlamaydi, shuning uchun ular string sifatida seriyalanadi. Reviver yordamida sana stringlarini tahlil paytida qayta haqiqiy JavaScript Date nusxalariga aylantirish mumkin:
Misol
let text = '{"event": "Conference", "date": "2026-07-22T11:28:00.000Z"}';
const myObject = JSON.parse(text, (key, value) => {
// Convert date string to a Date object
if (key === "date") {
return new Date(value); // Converts the string back to a Date object
}
// Return other keys/values unchanged
return value;
});
typeof myObject.date; // object
O‘zingiz sinab ko‘ring »
Noto‘g‘ri JSON
Agar JSON matni yaroqsiz bo‘lsa, JSON.parse() SyntaxError chiqaradi.
Noto‘g‘ri JSON
const text = "{name:'John'}";
JSON.parse(text);
Yuqoridagi misol 2 sababga ko‘ra noto‘g‘ri:
Xususiyat nomlari qo‘sh tirnoq ichiga kiritilmagan.
Stringlarda bittalik tirnoqdan foydalanib bo‘lmaydi.
Valid
{"name":"John"}
Invalid
{'name':"John"}
{"name":'John'}
{name:"John"}
{"name":John}
Tahlil (parse) xatolarini qayta ishlash
Yaroqsiz JSON’ni qayta ishlash uchun try...catch’dan foydalaning.
Misol
const text = "{name:'John'}";
try {
const person = JSON.parse(text);
}
catch(err) {
myDisplayer(err);
}
O‘zingiz sinab ko‘ring »
Tahlil qilishdagi keng tarqalgan xatolar
JavaScript obyektini parse qilish
JSON.parse() JavaScript obyektini emas, JSON matnini kutadi.
Wrong
const person = {name: "John"};
const result = JSON.parse(person);
To‘g‘ri
const text = '{"name":"John"}';
const person = JSON.parse(text);
JSON’ni ikki marta tahlil qilish
JSON tahlil qilingandan so‘ng, natija allaqachon JavaScript qiymatiga aylanadi.
Wrong
const person = JSON.parse('{"name":"John"}');
const result = JSON.parse(person);
Eslatma
JSON.parse()’ni faqat qiymat JSON matni bo‘lganda chaqiring.
Matn JSON formatida ekanligiga ishonch hosil qiling, aks holda siz sintaksis xatosini olasiz.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
