Категории

Инвертировать по

Инвертирует с группировкой по значениям lodash _.invertBy

Группирует ключи по значениям или преобразованным значениям.

Особенности:

  • Использует lodash _.invertBy
  • Группирует ключи в массивы
  • Необязательный путь итератора

Пример:

  • Объект: {"a":"x","b":"x","c":"y"}
  • Результат: {"x":["a","b"],"y":["c"]}

Введите JSON объект

Необязательный путь свойства для преобразования

Ключевые факты

Категория
Data Processing
Типы входных данных
textarea, text
Тип результата
text
Покрытие примерами
4
API доступен
Yes

Обзор

Инструмент «Инвертировать по» позволяет быстро перегруппировать ключи JSON-объекта на основе их значений, используя функционал lodash _.invertBy для создания массивов сгруппированных данных.

Когда использовать

  • Когда нужно сгруппировать идентификаторы объектов по общим категориям или статусам.
  • Когда требуется инвертировать структуру данных для более удобного поиска ключей по значению.
  • Когда необходимо выполнить трансформацию значений перед группировкой с помощью пути итератора.

Как это работает

  • Введите исходный JSON-объект в поле ввода.
  • При необходимости укажите путь итератора, чтобы сгруппировать данные по вложенным свойствам.
  • Нажмите кнопку обработки, чтобы получить объект, где значения стали ключами, а исходные ключи — массивами значений.

Сценарии использования

Классификация элементов списка по их типу или статусу.
Анализ распределения ключей по значениям в конфигурационных файлах.
Подготовка данных для отображения в интерфейсах, где требуется группировка по категориям.

Примеры

1. Группировка пользователей по ролям

Разработчик
Контекст
Есть список пользователей, где ключи — имена, а значения — их роли.
Проблема
Нужно получить список всех пользователей для каждой конкретной роли.
Как использовать
Вставьте объект пользователей и выполните инверсию.
Пример конфигурации
{"Alice": "admin", "Bob": "user", "Charlie": "admin"}
Результат
{"admin": ["Alice", "Charlie"], "user": ["Bob"]}

2. Анализ статусов задач

Менеджер проектов
Контекст
Имеется объект с ID задач и их текущими статусами.
Проблема
Требуется быстро увидеть, какие задачи находятся в работе, а какие завершены.
Как использовать
Введите объект задач и примените инструмент для группировки по статусам.
Пример конфигурации
{"task1": "done", "task2": "pending", "task3": "done"}
Результат
{"done": ["task1", "task3"], "pending": ["task2"]}

Проверить на примерах

json

Связанные хабы

FAQ

Что делает этот инструмент?

Он меняет местами ключи и значения в объекте, объединяя исходные ключи в массивы, если они имеют одинаковые значения.

Можно ли группировать по вложенным свойствам?

Да, вы можете указать путь итератора, чтобы инструмент использовал вложенное свойство для группировки.

Какой формат данных на выходе?

Результатом является JSON-объект, где ключи — это уникальные значения из исходного объекта, а значения — массивы соответствующих им ключей.

Используется ли какая-то библиотека?

Да, инструмент основан на функции _.invertBy из библиотеки lodash.

Что произойдет, если значения не уникальны?

Инструмент соберет все ключи с одинаковыми значениями в один массив для каждого такого значения.

Документация API

Конечная точка запроса

POST /ru/api/tools/invert-by

Параметры запроса

Имя параметра Тип Обязательно Описание
objectInput textarea Да Введите JSON объект
iterateePath text Нет Необязательный путь свойства для преобразования

Формат ответа

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
Текст: Текст

Документация MCP

Добавьте этот инструмент к конфигурации сервера MCP:

{
  "mcpServers": {
    "elysiatools-invert-by": {
      "name": "invert-by",
      "description": "Инвертирует с группировкой по значениям lodash _.invertBy",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=invert-by",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Вы можете объединять несколько инструментов, например: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, максимум 20 инструментов.

Если вы столкнулись с проблемами, пожалуйста, свяжитесь с нами по адресу [email protected]