Environment-getVariable-02.js (592B)
1 // getVariable works in function scopes. 2 3 var g = newGlobal({newCompartment: true}); 4 var dbg = Debugger(g); 5 var hits = 0; 6 dbg.onDebuggerStatement = function (frame) { 7 var lexicalEnv = frame.environment; 8 var varEnv = lexicalEnv.parent; 9 assertEq(varEnv.getVariable("a"), 1); 10 assertEq(varEnv.getVariable("b"), 2); 11 assertEq(varEnv.getVariable("c"), 3); 12 assertEq(varEnv.getVariable("d"), 7); 13 assertEq(lexicalEnv.getVariable("e"), 8); 14 hits++; 15 }; 16 g.eval("function f(a, [b, c]) { var d = a + b + c + 1; let e = d + 1; debugger; }"); 17 g.f(1, [2, 3]); 18 assertEq(hits, 1);