@ultraoptymista: metoda nazywa się _preparePath(path) i jako parametr bierze tablicę lub stringa. Jeśli wpada tablica, po prostu ją zwraca. Jeśli wpada string, dzieli go na kawałki i zamienia właśnie na tablicę. Gość użył every() zamiast forEach() bo potrzebował zrobić break w pewnym momencie, a forEach() leciałby po wszystkich elementach z path.split('.') do samego końca.
Ile to ja się nasłuchałem w życiu ostrzeżeń nt. "bab" od innych facetów, znajomych, przypadkowych różnych gości, z którymi gadałem. Najpierw jak to babom wali na dekiel DOPIERO PO ŚLUBIE, "ehehe młody życia nie znasz, dopiero po ślubie zobaczysz co to za ziółko".
Potem, jak to babom wali na dekiel PRZY BUDOWIE DOMU, "ehehe młody zobaczysz co znaczą baby jak zaczniecie dom budować".
Na końcu słuchałem jak to babom wali na dekiel DOPIERO PO
let result = null;
result = ['declare', 'api'].concat(path).reduce((o, m) => (o ? o[m] : null), this.constr);
return result;
gdzie path to tablica stringów, a this.constr = {}
Może ja to zrobię w ramach małego challengu ( ͡° ͜ʖ ͡°)