如何找到导致作用域冲突的变量?



我刚刚开始了一个新的HTML项目,但是今天我对javascript中的作用域冲突感到惊讶。关键是我试图声明一个名为top的变量,但我认为我已经在另一个文件中声明了它,我想知道是否有一个快速的方法来找到这个文件并修复它。

这是我的html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>day one</title>
</head>
<body>
<h1>hiii</h1>
<script src="script.js"></script>
</body>
</html>

这是我的javascript:

let top = [0, 0, 0]

当我打开devtools并查看控制台时,那里有一个错误消息:script.js:1 Uncaught SyntaxError: Identifier 'top' has already been declared (at script.js:1:1)

所以我尝试console.log()的顶部变量和输出是窗口

console.log(top)
// same thing as
console.log(window)

所以我认为最好的方法是试图找到原始文件的top变量是,有什么想法吗?

我不知道该怎么办;-;帮助PLEASEEEE

top是窗口的内置全局属性。所以当你在浏览器中运行时,你不能使用它作为变量名:

https://developer.mozilla.org/en-US/docs/Web/API/Window/top。

相关内容

最新更新