Как преобразовать удаленный объект JSON в массив в JavaScript - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь взять объект JSON с моего сервера Icecast и превратить его в массив, чтобы я мог получить доступ к текущей статистике номеров слушателей и отобразить ее в формате html.

Вот мой JS:

const endpoint = 'http://stream.8k.nz:8000/status-json.xsl';    
const serverStats = [];

fetch(endpoint)
    .then(blob => blob.json())
    .then(data => serverStats.push(data));

Это просто добавляет объект как отдельный элемент в массиве.Распространение метода ES6 не работает, поскольку оно работает только с массивами.

1 Ответ

0 голосов
/ 28 мая 2018

Нет необходимости в массиве.Вы получаете только один объект, и нужные вам свойства легко доступны из этого объекта

const endpoint = 'http://stream.8k.nz:8000/status-json.xsl';    
const serverStats = [];

fetch(endpoint)
    .then(blob => blob.json())
    .then(data =>{
        let source = data.icestats.source;
       // console.log(source)
        console.log('Listeners =', source.listeners, ' Peak=', source.listener_peak)


       console.log('\n ******************* \n')
       // to iterate over all the source key/values
       Object.keys(source).forEach(k=> console.log(k,'=', source[k]))
    
    })
.as-console-wrapper {	max-height: 100%!important;}
...