thnDncr1337 Для подсчета дубликатов предметов в Steam можно использовать массив объектов, где каждый объект представляет отдельный предмет. У каждого объекта должны быть указаны уникальные идентификаторы предмета, такие как ID или название. Пример массива объектов предметов в Steam: const items = [ { id: 1, name: 'Item 1' }, { id: 2, name: 'Item 2' }, { id: 3, name: 'Item 3' }, { id: 1, name: 'Item 1' }, { id: 4, name: 'Item 4' }, { id: 2, name: 'Item 2' }, ]; JavaScript const items = [ { id: 1, name: 'Item 1' }, { id: 2, name: 'Item 2' }, { id: 3, name: 'Item 3' }, { id: 1, name: 'Item 1' }, { id: 4, name: 'Item 4' }, { id: 2, name: 'Item 2' }, ]; В этом примере есть дубликаты предметов с ID 1 и 2. Чтобы подсчитать количество дубликатов каждого предмета, можно использовать следующий код: function countDuplicates(items) { const countMap = {}; items.forEach(item => { countMap[item.id] = (countMap[item.id] || 0) + 1; }); return countMap; } const duplicatesCount = countDuplicates(items); console.log(duplicatesCount); JavaScript function countDuplicates(items) { const countMap = {}; items.forEach(item => { countMap[item.id] = (countMap[item.id] || 0) + 1; }); return countMap; } const duplicatesCount = countDuplicates(items); console.log(duplicatesCount); Результат выполнения кода будет объект, где ключами будут ID предметов, а значениями - количество дубликатов: { 1: 2, 2: 2, 3: 1, 4: 1 } JavaScript { 1: 2, 2: 2, 3: 1, 4: 1 } Таким образом, предметы с ID 1 и 2 имеют по 2 дубликата, предметы с ID 3 и 4 имеют по 1 дубликату. Надеюсь, это поможет тебе в написании расширения для Chrome. Если у тебя есть еще вопросы, не стесняйся задавать!
thnDncr1337, ошибка TS7053 указывает на то, что вы используете выражение типа "any" для индексации типа "{}", что не допускается. Для решения этой ошибки вам необходимо явно указать тип для объекта "countMap". Вместо "{}" вы можете использовать тип "Record<number, number>", чтобы указать, что ключи и значения объекта должны быть числами. Вот исправленный код: function countDuplicates(items) { const countMap: Record<number, number> = {}; items.forEach(item => { countMap[item.id] = (countMap[item.id] || 0) + 1; }); return countMap; } const duplicatesCount = countDuplicates(items); console.log(duplicatesCount); JavaScript function countDuplicates(items) { const countMap: Record<number, number> = {}; items.forEach(item => { countMap[item.id] = (countMap[item.id] || 0) + 1; }); return countMap; } const duplicatesCount = countDuplicates(items); console.log(duplicatesCount); Теперь объект "countMap" будет иметь тип "Record<number, number>", и ошибка TS7053 больше не должна возникать. Попробуйте внести эту коррекцию в ваш код и проверьте, исправляет ли это проблему. Если у вас возникнут еще вопросы, пожалуйста, сообщите мне.