为什么我的变量显示它已被弃用?

JIT*_*ESE 8 javascript

我的编辑器 (VS Code) 显示我的变量名已被弃用。从第 2 行开始,它有一个斜线。你能帮我吗?

let name = 'Mark';
name = 5;
console.log(name);
Run Code Online (Sandbox Code Playgroud)

Que*_*tin 29

在浏览器中,全局name变量有特殊的意义。多年来,这引起了人们的很多困惑,因为他们试图创建自己的命名全局变量name,然后发现它被强制转换为字符串。

您正在使用的检查没有出现能特殊情况下的分配name,如果它遵循的声明let name

如果将代码放在函数中,您可以看到消息消失了。

显示上述内容的屏幕截图

  • 这是 IIFE 吗?如果是的话,开头的感叹号是做什么的。它喜欢否定它还是什么? (4认同)