Этот вопрос закрыт для ответов, так как повторяет вопрос Как сгруппировать массив объектов по значениям одного из свойств?
@IliaMal

Как сгруппировать value input'ов по их name'ам?

Из атрибутов тега надо собрать ассоциативный массив и сгруппировать данные по ключу, чтобы получилось что-то вида:

{
  one:  [ 1, 2, 3 ],
  two:  [ 4, 5 ],
  three: [ 6 ]
}

Попытался так:

<div>
    <input type="text" class="filter" name="one" value="1">
    <input type="text" class="filter" name="one" value="2">
    <input type="text" class="filter" name="one" value="3">
    <input type="text" class="filter" name="two" value="4">
    <input type="text" class="filter" name="two" value="5">
    <input type="text" class="filter" name="three" value="6">
</div>

const filter = document.querySelectorAll('.filter');
let name;
let arr = [];

    for (let nm in filter){
        if (typeof filter[nm] == 'object') {
            name = filter[nm].getAttribute('name');
            arr[name].push(filter[nm].value);
        }
    }

Но push для такой конструкции не подходит, отдает ошибку.

Как можно решить задачу?
  • Вопрос задан
  • 257 просмотров
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы