function funA(){
var varA = 'Kiran';
setTimeout(function(){ console.log('varA-->'+varA); }, 3000);
}
funA();
输出为: Kiran
问题:
在上面的示例中,funA的执行在超时函数被调用之前完成,但是在超时函数中,我们可以看到varA的值。理想情况下,应该在调用funA之后创建的执行上下文已被删除,并且varA的值应该是未定义的,或者应该抛出未声明的错误。
如何从funA得出基兰的价值?