JSON.parse() metodi

ULASHISH

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 »
Tahlil qilingandan so‘ng, obyekt xususiyatlariga oddiy JavaScript sintaksisi bilan kirish mumkin.

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!