сглаживание вложенных объектов с помощью одной Liner
В JavaScript задача сглаживания вложенных объектов часто возникает. Эта операция включает в себя преобразование сложного объекта с вложенными уровнями в одноуровневый объект. Хотя существуют различные подходы к достижению этого, мы углубимся в однострочное решение, которое использует современные функции JavaScript.
предоставленный фрагмент эффективно сглаживает вложенные объекты, используя метод object.assign (). Он сочетает в себе массив объектов с одной пропертикой, созданными с помощью рекурсивной функции (_flatten). Эта функция пересекает каждую ключ в входном объекте и либо вызывает себя, если значение является другим объектом или создает объект с одной парой значений свойств в противном случае.
реализация:
Object.assign({}, ...function _flatten(o) { return [].concat(...Object.keys(o).map(k => typeof o[k] === 'object' ? _flatten(o[k]) : ({[k]: o[k]})))}(yourObject))
выравнивание этого объекта: { A: 2, C: 3 }
redantages:
{ a:2, b: { c:3 } }
{ a:2, c:3 }достигает сглаживания объекта в одной строке кода. Underscore.
гибкость:
использует рекурсивную функцию (_flatten) для динамического обработки вложенных структур. Как object.assign и оператор распространения.Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3