Code Lab е в разработка. Постепенно добавяме нови уроци и подобрения. Прогресът може да бъде изтрит.
Зареждане…
Code Lab е в разработка. Постепенно добавяме нови уроци и подобрения. Прогресът може да бъде изтрит.
Зареждане…
Code Lab е в разработка. Постепенно добавяме нови уроци и подобрения. Прогресът може да бъде изтрит.
JAVASCRIPT STORAGE / CHAPTER 06 / Учене / LESSON 02
Теория. Пътят "обект → текст → обект" се нарича кръгово преминаване (round-trip). След JSON.parse получаваш НОВ обект със същите данни — не същия. Затова copy === original е false, дори да изглеждат еднакво.
JSON.parse очаква валиден JSON. Резултатът е само това, което JSON може да носи: числа, низове, булеви, null, масиви, обикновени обекти. Date става низ; undefined и функции изчезват.
Малки примери:
const text = '{"id":1,"title":"Rent","amount":500}'; const data = JSON.parse(text); data.title; // "Rent" JSON.stringify(data) === text; // true за този компактен запис
Редът на ключовете се запазва, а интервалите — не: stringify(data) дава компактен текст, освен ако не подадеш отстъп.
Честа грешка: да сравняваш обекти с ===; да очакваш парсиране на текст с единични кавички; да парсираш вече парсиран обект.
<pre id="json">{"id":1,"title":"Rent","amount":500,"tags":["home"]}</pre><p id="out"></p><p id="tags"></p><p id="back"></p>parse връща нов обект; stringify на него дава същия компактен текст.
(празно)Натисни Run — HTML се зарежда в sandbox iframe; Stop маха iframe-а (спира и безкраен цикъл).
›