Var、Let 和 Const……它们有什么区别?
变量
令和常量
如果你是 JavaScript 初学者,你可能会好奇 `$(var)`、`$(var)`var和let` const$(var)` 之间有什么区别,以及为什么这很重要?它们本质上是相同的,只是有一些细微的差别。`$(var)` Var、`$ let(var)` 和 `$(var)`const都是用于声明 JavaScript 变量的关键字。自 JavaScript 诞生以来,`$(var)`var一直是声明变量的主要方法,直到let2015const年 ES6 引入了 `$(var)` 和 `$(var)`。
首先,让我先解释一下每个关键词的技术细节。
变量
var 是函数作用域的
如果您不熟悉 JavaScript 中“作用域”一词的用法,它指的是您当前所在的代码块的上下文,它决定了某些变量的访问权限。如果您的变量在函数外部声明,则它是全局作用域的,这意味着它可以在代码中的任何位置访问。而对于 `var` 来说,它是函数作用域的。请参考下面的示例。 在这个例子中,由于 `var`是在函数内部声明的,因此它只能在该函数内部访问。
x
变量可以重新赋值,也可以重新声明。

var可以重新赋值,甚至可以重新声明,而不会抛出错误。你可能认为这能让代码库更灵活,但实际上,这可能会导致问题。由于var可以重新声明,你可能会完全忘记自己声明过某个变量,并在之后不小心覆盖它。在小型应用程序中,你很可能可以避免这种情况。但是,随着代码库的规模增大,最佳实践是尽可能使用let`int` 代替 `int` 。var
那么,和let呢const?
令和常量
let它们const的行为方式非常相似,只有一个主要区别。我们先来看看它们的相似之处。
它们的作用域是块级的。
使用 `& let` 和 `& const`,变量只能在其所在的代码块的作用域内访问。那么你可能会问,什么是代码块?代码块是由一对 `&` 包围的任何内容{}(例如,`for` 循环、`if` 语句等)。请参考下面的示例。 在这个例子中,变量在函数的代码块作用域内声明,因此它可以在整个函数内部访问。但是,变量在 `if` 语句的代码块作用域内声明,因此它只能在该语句内部访问,即使该语句位于函数内部。
xy
let 可以重新赋值,但不能重新声明。
let它与 `var` 类似,可以重新赋值,但不能重新声明。这有助于解决我之前提到的关键字覆盖问题。你可以多次var重新赋值一个变量,但原始声明始终保持不变。let

const 不能被重新赋值或重新声明(某种程度上)。
const在 JavaScript 中,`int` 关键字的字面意思是“常量”。当为代码库中永远不会改变的变量选择一个关键字时,请使用 `int` const。这有助于提高代码的可读性,方便你和其他开发者阅读。
注意:虽然const变量不能被重新赋值或重新声明,但其值可以被操作。例如,如果一个对象被赋值给一个const变量,只要原始对象没有被重新赋值给新对象,JavaScript 就允许操作该对象中的值和属性。示例:
简讯:
避免使用 ` var.`。如果你的变量永远不会改变,请使用 ` const.`。否则,请使用 ` let!`。希望这能让你明白 JavaScript 变量的“是什么”和“为什么”!