gpt4 book ai didi

javascript - 使用 eval() 定义 const 变量

转载 作者:数据小太阳 更新时间:2023-10-29 04:03:26 26 4
gpt4 key购买 nike

当我尝试使用 var 定义变量时,一切正常。

但是将其定义为 const 并没有按预期工作,并且该变量未定义。

window.eval("var v = 5;");
document.body.innerHTML += window.v === undefined;

window.eval("const l = 5;");
document.body.innerHTML += window.l === undefined;

我已经在 Chrome 和 Node.js 上测试过它。我错过了什么吗?

提前致谢!

最佳答案

eval 代码中使用 letconst 不会调用严格模式。 letconstlexicalDeclarations , 这将它们的范围限制在封闭的词法范围内。

词法作用域由 block 创建并通过直接调用 eval(参见 Runtime Semantics: PerformEva step 12)。

关于javascript - 使用 eval() 定义 const 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43188732/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com