Как динамически рассчитать количество отдельных строк в данных JSON? - PullRequest
0 голосов
/ 02 января 2019

У меня есть данные JSON, которые должны рассчитывать количество типов в данных JSON на основе данных. Поэтому, используя ajax или jquery, нам нужно выполнить эту задачу.

var item = [{name:a,type:abc},{name:a,type:abc},{name:a,type:abc},{name:a,type:abc},{name:a,type:abc},{name:a,type:ac},{name:a,type:bc},{name:a,type:ac},{name:a,type:ab},{name:a,type:ac}]

Код должен применяться, даже если данные изменены.

1 Ответ

0 голосов
/ 02 января 2019

Вы можете сосчитать различные типы, используя reduce() для создания объекта с ключом type. Увеличьте его, если он существует, или установите его на единицу, если вы впервые видите его в цикле:

var item = [{name:'a',type:'abc'},{name:'a',type:'abc'},{name:'a',type:'abc'},{name:'a',type:'ac'},{name:'a',type:'ab'},{name:'a',type:'ac'},{name:'a',type:'ab'},{name:'a',type:'ac'}, {name:'a',type:'xx'}]

let counts = item.reduce((counts, {type}) => {
    counts[type] = counts[type] ? counts[type] + 1 : 1
    return counts
}, {})
console.log(counts)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...