变量
命名规范
以 字母、数字、下划线、美元符号 $ 组成、不能以 数字开头、且不能使用 js 中的关键字。
命名规范推荐采用小驼峰 命名法 。类名 采用 大驼峰命名。
var 声明变量的特点
- 在 script 上下文中定义的是 全局变量,全局变量会自动称为 window的属性。 在函数中定义的 是 局部变量
<script>
// 定义一个全局变量
var a = 10 ;
</script>
-
var 可以多次声明同一个变量
<script> // 定义一个全局变量 var a = 10 ; var a ; console.log(a) // 10 </script>
-
var 有 变量提升现象 (先使用变量(undefined) 、在声明)
<script> console.log(a) // undefined // 定义一个全局变量 var a = 10 ; console.log(a) // 10 </script>
let 声明变量的 特点
- let 声明的变量是 局部变量
let a = 10
console.log(window.a) // undefined
- let 声明的变量 不存在 变量提升现象
console.log(a) // 产生错误 let a = 3
- let 声明的变量 不允许重复声明
let a = 3 var a = 4 // 产生错误
- let 存在 暂时性 死区 现象。
let a = 3 { console.log(a) // 产生错误 let a = 5 } console.log(a) // 如果没有错误 ,打印 3