报错:Uncaught SyntaxError: Identifier 'words' has already been declared
在浏览器的控制台(Console)中定义的变量是全局变量,它们会保留在当前的浏览器窗口或标签页的生命周期中。即使你清除了控制台的内容(例如通过点击控制台上的清除按钮或使用console.clear()命令),已经声明的变量仍然会存在。
这是因为变量是存储在浏览器的JavaScript环境中的,而不是存储在控制台的历史记录中。控制台的历史记录只是显示了你之前输入过的命令和它们的输出,但它并不控制变量的存在与否。
如果你想重新声明一个已经存在的变量,你可以直接给它赋一个新的值。但是,请注意,如果你试图使用let或const来重新声明一个已经使用相同标识符声明的变量,你会得到一个错误,因为let和const不允许重复声明。但是,如果你使用var来声明变量,那么即使变量已经存在,它也不会报错,而是会简单地更新该变量的值。
例如:
// 在控制台中
var myVar = "Hello"; // 声明并初始化一个变量
console.log(myVar); // 输出 "Hello"
myVar = "World"; // 更新变量的值
console.log(myVar); // 输出 "World"
var myVar = "Again"; // 重新声明并更新变量的值,不会报错
console.log(myVar); // 输出 "Again"
let anotherVar = "Test"; // 使用let声明一个变量
// let anotherVar = "Another Test"; // 这行会报错,因为anotherVar已经被声明过了