Função definida com 'this', mas executando sem 'this'

Eu estava esperando a segunda chamada da função "taco" para gerar um erro de tempo de execução desde que eu não estou chamando-o com a palavra-chave "this":

function foo() {
    var bar = "baz";

    this.taco = function() {
        console.log(bar);
    };
    this.taco();
    taco(); // I expected a runtime error here.     
}

foo();

No entanto, isso não acontece.

Aqui está um violino do mesmo código:http://jsfiddle.net/phillipkregg/gdFxU/226/

O JavaScript está usando algum tipo de gerenciamento de contexto implícito aqui?

Apenas curioso, obrigado!

questionAnswers(3)

yourAnswerToTheQuestion