JavaScript基础语法详解
上QQ阅读APP看书,第一时间看更新

2.2.1 定义变量

在JavaScript中,可以使用let关键字定义变量,代码如下:

     let lang="JavaScript";

这里的let lang做了两步操作:

(1)声明(Declare)了一个名为lang的变量。let lang这部分执行的操作为声明,声明之后变量便有了名字,可以在后边使用了,但是并没有值(默认值为undefined)。

(2)使用等号把一个字符串的字面值"JavaScript"赋给了变量lang,或者也可以说把lang变量绑定(Bind)给了"JavaScript"这个值。这时访问lang变量就可以得到值"JavaScript"。这步操作叫作初始化(Initialize)。

这两步操作加起来称为变量的定义,不过有时候声明和定义会交替使用,因为它们两个的区别只体现在某些特定的场景下。

这里也可以先声明变量,稍后再给它赋值,代码如下:

     let lang;//undefined
     lang="JavaScript";

这样第1行在声明变量时,它的值默认为undefined,后续第2行再给它赋值为"JavaScript"。不过非必要情况下并不建议这么做,因为后续如果忘记赋值,则程序就会出现错误,推荐在声明变量的同时进行赋值。

也可以同时定义多个变量,每个变量名之间使用逗号分隔,代码如下:

     let name="John",age=25;      //同时赋值
     let title,tag="JavaScript";  //title只作声明,tag声明并赋值

这里需要说明一下,在ES6以前,JavaScript定义变量的方式是使用var关键字,但是它带来的副作用比较多,例如作用域、变量提升的问题,使代码容易出错、难以调试。后边讲作用域的时候再详细介绍它与let的区别,目前推荐使用let关键字定义变量。

掌握变量的定义之后,变量的命名也有一定的规则,需要了解一下变量的命名规范。