ES6:let 和 const 声明变量

阅读时长 3 分钟读完

在 ES6 之前,我们用 var 关键字来声明变量,然而 var 存在一些问题,比如有变量提升的问题,以及在函数作用域中定义的变量外部也能访问的问题。

为了解决这些问题,ES6 引入了 letconst 来声明变量。

let

let 关键字用来声明块级作用域的变量。块级作用域指的是花括号 {} 中的代码区域。

var 不同的是,let 声明的变量不存在变量提升的问题,变量只能在声明后访问。

此外,let 声明的变量在块级作用域外不可访问。这意味着,在循环中使用 let 声明变量时,每次循环都会创建一个新的变量。

const

const 关键字用来声明常量,常量是指一旦声明就不能再改变的值。

let 一样,const 声明的变量也有块级作用域的特点。

当试图修改一个用 const 声明的变量时,会抛出异常。

需要注意的是,用 const 声明的对象和数组仍然可以修改其属性或元素的值,但不能重新赋值。

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

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

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

总结

letconst 均用来声明块级作用域的变量,可有效避免变量提升问题,并且增加了代码的可读性和可维护性。

在使用时,应尽量使用 const 声明不变的值,例如常量、配置等,而使用 let 声明可变的值,例如循环变量、函数内部变量等。

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

纠错
反馈