ES6:如何使用 'let' 和 'const' 变量声明

阅读时长 3 分钟读完

ES6 是一份在 2015 年正式发布的 JavaScript 标准,也被称为 ECMAScript 2015。在这个新标准中,新增了一些非常方便的变量声明方式:'let' 和 'const'。

'let'

'let' 成为声明变量的更好方式,因为它允许你将变量的作用域限制在块级范围内。

使用 'let' 声明的变量在声明后,只能在当前的代码块中使用,而在外部都不能使用。比如下面这段代码:

-- -------------------- ---- -------
-------- ------------- -
  -- ---- -- --- -
    --- ------- - ---- --- ----------
  - ---- -
    --- ---------- - ---- --- --- ----- -- ----------
  -

  --------------------- -- -------- --------------- ------- -- --- -------
  ------------------------ -- -------- --------------- ---------- -- --- -------
-

在上面的代码中,'allowed' 和 'notAllowed' 变量被声明在了不同的块级作用域中,因此在声明的块级作用域之外使用这些变量会引发 'ReferenceError'。

'const'

'const' 跟 'let' 一样,只存在于声明它的那个代码块中,但是这个变量不允许重新赋值。相信每个前端开发者都有重构代码的经历,使用了一个数值后却需要修改,这时候 const 就可以很好地解决这个问题。

下面是一个使用 'const' 定义常量的例子:

在上面的例子中,我们发现当我们尝试修改 'key' 常量值时,出现了 'TypeError' 错误,因为常量值不能被修改。

'let' 和 'const' 使用时的建议

我们可以通过以下建议更好的使用 'let' 和 'const':

  1. 'let' 和 'const' 尽量取代 'var'。 'var' 的变量声明方式更弱化,不限作用域会导致全局污染和变量被覆盖等问题;
  2. 如果知道一个变量不需要重新赋值,使用 'const' 。
  3. 如果需要重新赋值使用 'let' 否则用 'const'。
  4. 常量使用大写字母和下划线分隔。

总结

'let' 适用于在代码块中定义局部变量,而 'const' 更适用于定义常量,因为这样有助于代码的可维护性和可读性。在使用 'let' 和 'const' 声明变量时,需要格外注意变量作用域和常量是否可被修改的问题。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/645855cd968c7c53b0aba3f2

纠错
反馈