As funções de seta do ES6 ainda fecham sobre "isto" mesmo que não o usem?

Estou tentando entender as regras de quandothis é ligado lexicamente em uma função de seta ES6. Vamos primeiro olhar para isso:

function Foo(other) {
    other.callback = () => { this.bar(); };

    this.bar = function() {
        console.log('bar called');
    };
}

Quando eu construo umnew Foo(other), um retorno de chamada é definido nesse outro objeto. O retorno de chamada é uma função de seta e othis na função de seta está lexicamente ligada aoFoo instância, então oFoo não será coletado lixo, mesmo que eu não guarde nenhuma outra referência aoFoo por aí.

O que acontece se eu fizer isso?

function Foo(other) {
    other.callback = () => { };
}

Agora, defino o retorno de chamada como nop e nunca mencioneithis iniciar.Minha pergunta é: a função de seta ainda se liga lexicamente athis, mantendo oFoo vivo enquantoother está vivo ou podeFoo ser lixo coletado nessa situação?

questionAnswers(1)

yourAnswerToTheQuestion