JSFiddle - React, Tailwind, and code Playground

by Sergei Sokolov

JavaScript

/**
 * для вопроса https://qna.habr.com/q/736135
 * Как сформировать объект в виде ассоциативного массива?
 */ 
const arr = [
  { name: "filter-name", value: "Исполнитель" },
  { name: "operator-select", value: "contains" },
  { name: "name-select", value: "1" },
  { name: "filter-name", value: "Статус" },
  { name: "operator-select", value: "contains" },
  { name: "search", value: "sdadasds" },
];


const result = arr.reduce((acc, cur) => {
  if (cur.name === 'filter-name') acc.push({});
  acc[acc.length - 1][cur.name] = cur.value;
  return acc;
}, []);

const output = document.createElement('pre');
output.innerText = JSON.stringify(result, null, 2);
document.body.appendChild(output);