1.4.3 变量的声明与赋值
在程序中,经常需要使用变量来保存数据。例如,将两个数字相乘的结果保存到变量中,以便在后面的计算中使用。在使用变量时,需要先声明变量,类似于坐火车时需要先预订火车票。声明变量后,就可以为变量赋值,从而完成数据的存储。
JavaScript中变量的声明与赋值有两种方式:第1种方式是先声明变量后赋值;第2种方式是声明变量的同时赋值。下面分别讲解这两种方式。
1.先声明变量后赋值
JavaScript 中通常使用 var 关键字声明变量,声明变量后,变量值默认会被设定为undefined,表示未定义。如果需要使用变量保存具体的值就需要在声明变量后为其赋值。
先声明变量后赋值的示例代码如下。
1 // 声明变量 2 var username; // 声明一个名称为username的变量 3 var age, sex, height; // 同时声明3个变量 4 // 为变量赋值 5 username = '小智'; // 为变量赋值'小智' 6 age = 20; // 为变量赋值20 7 sex = '男'; // 为变量赋值'男' 8 height = 180; // 为变量赋值180
上述示例代码已经完成变量的声明和赋值,其中,’小智’和’男’属于字符串型数据,需要使用单引号标注。
当变量的值是数字型数据时,不需要将其写在单引号中,如果将数字型数据写到单引号中,则表示该数据为字符串型数据,而不是数字型数据。
如果想要查看变量的值,则可以使用console.log()语句将变量的值输出到控制台。例如,在上述代码的下方继续编写如下代码。
console.log(username); // 输出变量username的值 console.log(age); // 输出变量age的值 console.log(sex); // 输出变量sex的值 console.log(height); // 输出变量height的值
运行上述代码,输出结果如图1-16所示。
由图1-16可知,控制台显示了“小智”“20”“男”“180”,说明已经将变量的值输出到控制台。
小提示:ECMAScript 6.0新增了let关键字,用于声明变量,它的用法类似于var,但是let所声明的变量只在它所在的块级作用域内有效。
图1-16 输出结果
2.声明变量的同时赋值
在声明变量的同时为变量赋值,这个过程又称为定义变量或初始化变量,示例代码如下。
var username = '小智'; // 声明username变量并赋值为'小智' var age = 20; // 声明age变量并赋值为20 var sex = '男'; // 声明sex变量并赋值为'男' var height = 180; // 声明height变量并赋值为180
多学一招:使用变量的语法细节
在JavaScript中使用变量时,还有一些语法细节,具体介绍如下。
(1)更新变量的值
当声明一个变量并赋值后,如果重新为该变量赋值,则原来的值会被覆盖,示例代码如下。
var age = 20;
console.log(age);
age = 22;
console.log(age);
// 输出结果为:20
// 更新变量的值
// 输出结果为:22
(2)同时声明多个变量
在 var 关键字后面可以同时声明多个变量,多个变量名之间使用英文逗号隔开,示例代码如下。
// 同时声明多个变量,没有赋值 var username, password, phone; // 同时声明多个变量,并赋值 var username = '小智', password = '123456', phone = '13012345678';
如果只声明变量没有赋值,则输出结果为undefined。如果不声明变量,直接输出变量的值,则程序会报错。