JavaScript 变量
JavaScript 变量
JavaScript 通过 var,let,const 关键字定义变量
const
在不需要重新赋值的特殊变量,指向一个固定的值时使用 const 声明变量,如此可避免代码不必要的变更,且为 JavaScript 引擎的性能优化提供便利。
通过 const 定义的变量必须赋初值,且不可变,只能赋值一次。可以修改 const 声明的引用类型变量,但不能重写。
Uncaught SyntaxError: Missing initializer in const declaration
1 | const MAX_TIMES |
const
声明中缺失初值。也就是说使用const
声明变量时必须赋初值。
Uncaught TypeError: Assignment to constant variable.
1 | const MAX_TIMES = 3 |
分配给了常量值,即通过
const
声明的变量值不可以修改
常量为引用类型
1 | const obj = {} |
Uncaught ReferenceError: A is not defined访问块级作用域
1 | { |
var
通过 var 定义的变量,可变,且可多次修改赋值。仅在距离最近的函数内或全局作用域内注册。
1 | var global = 'global' |
Uncaught ReferenceError: fn is not defined 全局不能访问函数作用域内部变量。
函数可以访问块级作用域内部变量
let
通过 let 定义的变量,可变,同样可多次修改赋值
1 | let global = 'global' |
Uncaught ReferenceError: block is not defined 函数不可以访问块级作用域内部变量