Ответы пользователя по тегу JavaScript
  • Как заменить ключи во вложенных объектах?

    a777mp198
    @a777mp198
    Python developer
    Ваше решение близко к решению, но в нем есть несколько ошибок:
    1. Вы используете рекурсивный вызов функции solution вместо f, которую вы определили.
    2. Вы присваиваете res[key] дважды: один раз перед проверкой на instanceof Object, а затем в блоке условия.
    const f = (obj) => {
      const res = {};
    
      for (let key in obj) {
        const newKey = `${key}_upd`;
    
        if (Array.isArray(obj[key])) {
          res[newKey] = obj[key].map((el) => {
            return el instanceof Object ? f(el) : el;
          });
        } else {
          res[newKey] =
            obj[key] instanceof Object ? f(obj[key]) : obj[key];
        }
      }
    
      return res;
    };
    
    console.log(f(data));
    Ответ написан