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!