Назад к задачам
Junior — Senior
5

Получение значения по вложенному пути в объекте

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Имеется объект, вложенный на несколько уровней. Требуется реализовать прототипный метод hash, который принимает строку‑путь и возвращает соответствующее значение, если такой путь существует, либо undefined, если путь неверный.

const obj = {
  person: {
    name: "joe",
    history: {
      hometown: "bratislava",
      bio: {
        funFact: "I like fishing.",
      },
    },
  },
};

obj.hash("person.name"); // 'joe'
obj.hash("person.history.bio"); // { funFact: 'I like fishing.' }
obj.hash("person.history.homeStreet"); // undefined
obj.hash("person.animal.pet.needNoseAntEater"); // undefined

Метод должен корректно обрабатывать любые вложенные структуры, возвращая нужные данные или undefined, когда путь не может быть разрешён.