Рекурсия в Вашем варианте это хороший выбор, если паттерн повторяется и количество child вложенностей может быть разным. Код можно написать иначе, чтоб он был более понятным.
А зачем объект клонировать?
и порекомендовал бы Вам поработать над названиями объектов и свойств, потому что childrenId подразумевает идентификатор группы child объектов, а не массив из child объектов.
такое название приходит с бэка
Arrray.find возвращает ПЕРВЫЙ элемент в массиве, коллбэк над которым вернёт не ложное значение. У вас коллбэк возвращает из тернарника ОБЪЕКТ ВСЕГДА (объект не ложен всегда в жыэс), то есть только первый элемент вернёт свою тушку с изменённым флагом, ещё если вложенность есть - то плюс первый элемент вложенности и так далее рекурсивно по первым элементам. Разве это правильная работа? или я не прав?
то есть не правильно тернарник использовать с find? лучше вернуть обьект, а потом отдельно поменять ему поле на противоположное?
там find вообще нафиг не нужен. нужно разбить на две функции - первая меняет флаг на обратный, вторая рекурсивно обходит произвольное дерево, и первую применять над каждым элементом второй
Обсуждают сегодня