如何解决在 Javascript 中的块内使用 var 变量隐藏 let 变量时出错
我听说过 JS 中的阴影。我的问题是为什么我们不能用一个块中存在的 var 变量隐藏全局范围中存在的 let 变量。 例如->
let a =100;
{
var a =100;
console.log(a);
}
我想到这个问题是因为我研究了 let 和 var 变量存在于不同的内存位置。所以在我看来这应该不是问题。
如果有问题,那么为什么下面的代码有效
var a = 100;
{
let a=10;
console.log(a);
}
输出:- 10
请提供详细的答案,解释每种情况下的执行上下文和变量环境。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。