Добавление объектов в массив без дублирования вложенных данных

#javascript #jquery #arrays #object #duplicates

#javascript #jquery #массивы #объект #дубликаты

Вопрос:

 if (checkFields.is(':checked')) {
    filtersText = '';
    checkFields.each(function() {
        if (this.checked) {
            var category = $(this).data('filter-category');
            endpoint  = 'amp;filter['   $(this).data('filter-group')   '][]='   category;
                if (filtersText !== '') {
                    filtersText = filtersText   ', ';
                }
            filtersText = filtersText   category;
            // find parent

            var treeParent = $(this).parent().parent().parent().find('.js-filter__group--title').text(); // 'Region'
            var treeChild = $(this).next('label').children('.js-filter__group__drop--title').text(); // 'London'

            // WORKINGS START HERE!!
            var mapSettings = [];

            mapSettings = [
                {parent: treeParent, children: [treeChild, treeChild]}, // {parent: 'Region', children: ['London', 'Birmingham', 'Manchester']},
                {parent: treeParent, children: [treeChild]}, // {parent: 'League', children: ['League 1', 'League 2', 'Premier']},
            ];
        }
    });
}
  

Выяснение наилучшего способа избежать дублирования при добавлении объектов в массив:

Набор данных и требования:

  • Список выпадающих списков (treeParent) с полями ввода (treeChild) в них для фильтрации

  • необходимо добавить объекты в наборы отображений массива БЕЗ:

    1. дублирование объектов, добавленных с тем же «родительским» именем
    2. дублирование элементов в дочерних элементах массива

Комментарии:

1. Если вы можете создать демонстрационную скрипку, нам было бы полезно ее решить

2. Если объект с родительским и дочерним элементами, у которых уже есть значения в mapSettings, он должен быть вставлен без дубликатов или значений igonorado?