Распарсить массив из json

131
18 ноября 2019, 02:00

Есть json файл с названием example.json

{
    "name":"John",
    "age":31,
    "pets":[
        { "animal":"dog", "name":"Fido" },
        { "animal":"cat", "name":"Felix" },
        { "animal":"hamster", "name":"Lightning" }
    ]
}

Пытаюсь вывести названия животных

<p id="demo"></p>
<script>
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myObj = JSON.parse(this.responseText);
    document.getElementById("demo").innerHTML = myObj.name + "," + myObj.pets;
  }
};
xmlhttp.open("GET", "example.json", true);
xmlhttp.send();
</script>

На выходе получаю

John,[object Object],[object Object],[object Object]

А как получить такое Имя: Джон, Животные: Собака - Фидо, Кот-Феликс, Хомяк - Лайтнинг.

Answer 1

Вам нужно в строку массив питомцев преобразовать. Как-то так:

document.getElementById("demo").innerHTML = myObj.name + ", Животные: " + myObj.pets.map(pet => pet.animal + " - " + pet.name).join(',');
READ ALSO
Как в Bootstrap 4 добавить на показ 7 слайдов?

Как в Bootstrap 4 добавить на показ 7 слайдов?

Задача: Показать 7 элементовЕсли их будет больше

80
Видимость let в теле switch case? [дубликат]

Видимость let в теле switch case? [дубликат]

На данный вопрос уже ответили:

122
Возврат из slice() пустого массива

Возврат из slice() пустого массива

Доброе время суток,столкнулся казалось бы с очень простой ситуацией: Получить из массива под массивКод таков:

97
Highstock и websocket

Highstock и websocket

Использую react, библиотеку highcharts-react-official и highstock и обновление данных по websocketПервые пару минут все работает как часы

115