Просто вызывается функция, из функции возвращается результат и из этого результата снова вызывается функция, никакой магии:
function a() {
return 1
}
a() //1
function b() {
return {
some: 1
}
}
b().some //1
function c() {
return {
b: b
}
}
c().b().some //1
Если же проблема с this то тут тоже всё просто.
Когда вызываешь obj.some(), this внутри some становится obj, соответственно
let ladder = {
some() {
return this;
}
}
при вызове ladder.some() равносилен
let ladder = {
some() {
return ladder;
}
}
, т.е. каждый резульат вызова ladder.some() равен ladder, а значит у него снова можно вызвать some и так до бесконечности.