我有一些代码基本上是这样的:
TestFunction();
const pi = 3.14;
function TestFunction()
{
alert("pi="+pi);
}
代码失败,因为“pi”未定义。我挠了挠头很长时间,但后来意识到代码没有被线性解析。调用函数时,解析了函数“TestFunction”,但尚未解析常量。
Safari 和 Chrome 会出现这种情况。我不知道是否所有浏览器都会以相同的方式解析。它可能适用于某些人。
最佳答案
在第一次调用函数之前移动常量的定义解决了问题。
const pi = 3.14;
TestFunction();
function TestFunction()
{
alert("pi="+pi);
}
关于javascript - 全局变量在下面的 javascript 函数中未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51955873/