Создать функцию JS с библиотекой Lodash

Добрый день команде знатаков. Помогите пожалуйста с решением.

написать функцию, которая убирает из объекта все пустые объекты. Решение можно оформить в двух вариантах - меняется исходный объект, либо функция возвращает новый модифицированный объект без пустых свойств.Lodash/underscore

(мой вариант решения без lodash..

======================/////============

removeEmpty(obj) {
    const finalObj = {};
    Object.keys(obj).forEach((key) => {
      if (obj[key] && typeof obj[key] === 'object' && !Array.isArray(obj[key])) {
        const nestedObj = this.removeEmpty(obj[key]);
        if (Object.keys(nestedObj).length) {
          finalObj[key] = nestedObj;
        }
      } else if (Array.isArray(obj[key])) {
        if (obj[key].length) {
          obj[key].forEach((x) => {
            const nestedObj = this.removeEmpty(x);
            if (Object.keys(nestedObj).length) {
              finalObj[key] = finalObj[key] ? [...finalObj[key], nestedObj] : [nestedObj];
            }
          });
        }
      } else if (obj[key] !== '' && obj[key] !== undefined && obj[key] !== null) {
        finalObj[key] = obj[key];
      }
    });
    return finalObj;
  }

=======////====

var object = {

  a: {

    b: 1,

    c: {

      a: 1,

      d: {},

      e: { 

         f: {} 

      }

    }

  },

  b: {}

};

Стало:

{

a: {

    b: 1

    c: {

        a: 1

    }

}

}

Ответы (0 шт):