.. _js_var_const: ==================== JavaScript变量和常量 ==================== 变量命名 ============ - JavaScript变量区分大小写 - 应该采用 ``驼峰式拼写法`` - 每个单词首字母大写(第一个单词除外) - ``$`` 开头变量名通常保留用于JavaScript库 变量值 ======== - 字符串变量用双引号或单引号扩起(风格要统一即可) - 布尔值 ``true`` 和 ``false`` 不要使用引号扩起 变量定义 ========= - ``var`` 定义变量 - ``var`` 申明变量时,变量作用域取决于当前位置的上下文:如果申明在函数内就是函数作用域,如果申明在函数外就是全局作用域 - 不论在代码什么位置申明变量,执行引擎都会在任何代码执行前处理,所以建议将变量申明放到函数或者全局代码的开头部分 - 未申明的变量会被添加作为全局作用域,所以不建议不申明变量就使用,严格模式下会抛出 ``ReferenceError`` - 申明变量在任何代码执行前创建,而未申明变量只有执行赋值操作时才被创建 - ``let`` 定义块级变量(例如 ``if`` 代码块) - ``const`` 定义常量 - ``const`` 用于申明一个或多个常量,申明时必须进行初始化,并且初始化之后值不可再修改 - ``const`` 定义常量和 ``let`` 定义变量十分相似,都是块级作用域,都不能和它所在作用域内的其他变量或函数拥有相同的名称 参考 ====== - `var、let、const与JavaScript变量/常量的定义 `_