In un debugger JavaScript, posso ispezionare manualmente il scope chain di una funzione. Per esempio, quando si esegue foo()
su questo pezzo di codice:Come controllare a livello di codice la catena dell'ambito JavaScript?
var x1 = "global";
var foo = (function main() {
var x2 = "inside obj";
return function internalFoo() {
var x3 = "inside internalFoo";
console.log (x1+','+x2+','+x3); // get the scopes
};
})();
foo();
e l'impostazione di un punto di interruzione sulla console.log
, compaiono i seguenti scopi:
c'è qualche mezzo per fare questo al livello di programmazione?
Come è possibile verificare ciò che è definito a tutti i livelli di portata?