How frequently does the letter б appear in:
Q: Как найти ID того пользователя, указанного в большенстве объектов? имеется такой объект, необходимо найти того юзера, кто имеет наибольшее количество групп (в contacts указаны они)
на этом примере я должен найти ID 65
тоесть юзер под id 65 имеет самое большое количество групп


A: *

*Вначале выбрать все массивы с контактами в новый, типа такого:
 let arr = test.reduce((acc, item) => {
     acc.push(item.contacts);
     return acc;
 }, [])



*Затем надо массив сделать плоским https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/flat, получится примерно так:
 let arrFlat = arr.flat();

Результат будет примерно таким:
[65, 45, 65, 23, 78, 90]



*Дальше уже можно идти любыми путями, какими вы считаете нужными для подсчёта. Например можно сделать мапу, где ключ - ID, значение - количество вхождений и потом найти максимумЫ из него. Можно сразу цикл и подсчёт.
const occurrences = [65, 45, 65, 23, 78, 90].reduce(function (acc, curr) {
  return acc[curr] ? ++acc[curr] : acc[curr] = 1, acc
}, {});

console.log(occurrences) // => {23: 1, 45: 1, 65: 2, 78: 1, 90: 1}
                                                  ^-----


Сразу мапу сформировать так:
let occurrences = arr.reduce((acc, curr) => {
    curr.contacts.forEach(contact => {
        acc[contact ] ? ++acc[contact ] : acc[contact ] = 1
    })

    return acc;
}, {});

console.log(occurrences) // => {23: 1, 45: 1, 65: 2, 78: 1, 90: 1}
                                                  ^-----


Строго говоря, можно было сразу делать двойной цикл (первый по VKGroup, второй - внутри по contacts) и сразу находить  максимальные вхождения. Но способ выше в п.1.2.3 наверное немного нагляднее.


user
In that passage, there are 11 occurrences of the letter "б."
assistant