JavaScript+jQuery交互式Web前端开发(第2版)
上QQ阅读APP看书,第一时间看更新

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。如果不声明变量,直接输出变量的值,则程序会报错。