В этой небольшой заметке я хочу рассказать вам о некоторых редко используемых возможностях JSON.stringify(). Возможно, они окажутся вам полезными.
JSON.stringify() часто используется при отладке для преобразования объекта или обычной строки в строку в формате JSON. Но как данный метод используется, и можем ли мы обойтись toString()? Давайте попробуем это сделать.
// создаем объект user
const user = {
name: 'Harry Heman',
age: 29,
job: 'developer'
}
// преобразуем объект в строку, используя стандартный метод toString(), и выводим результат в консоль
console.log(user.toString()) // [object Object]
[object Object] — это не совсем то, что мы хотели увидеть, не правда ли?
Не спрашивайте, зачем мы вообще используем toString(). Предположим, что нам жизненно необходимо перевести объект в строку.
Теперь попробуем использовать JSON.stringify():
console.log(JSON.stringify(user)) // {"name":"Harry Heman","age":29, "job": "developer"
Мы сделали это, Карл!
Однако возможности JSON.stringify() этим не исчерпываются.
Обычно JSON используется для обмена данными с веб сервером.
При получении данных с веб сервера они всегда представляют собой строку.
Проанализируйте данные с помощью JSON.parse(), и данные становятся объектом JavaScript.
Представьте, что мы получили этот текст с веб сервера:
'{"name":"Андрей", "age":50, "city":"Пермь"}'
Используйте функцию JavaScript JSON.parse() для преобразования текста в объект JavaScript:
let obj = JSON.parse('{"name":"Андрей", "age":50, "city":"Пермь"}');
Убедитесь, что текст написан в формате JSON, иначе вы получите синтаксическую ошибку.
Используйте объект JavaScript на своей странице:
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = obj.name + ", " + obj.age;
</script>