1.2 表达式

语句由一个或多个表达式组成。一个表达式是对一个变量或值的引用,或者是一组值和变量与运算符的组合。

举例来说,a = b * 2;这个语句中有四个表达式。

· 2是一个字面值表达式

· b是一个变量表达式,表示获取它的当前值。

· b * 2是一个算术表达式,表示进行乘法运算。

· a = b * 2是一个赋值表达式,意思是将表达式b * 2的结果赋值给变量a(我们将在后文中深入介绍赋值)。

一个独立的表达式也可以称为表达式语句,如下所示:

        b * 2;

这种表达式语句不是很常用,或者说不是很有用,因为它通常不会对程序的运行起到任何作用,它只是取得b的值并乘以2,但是却没有对结果有任何影响。

更常用的表达式语句是调用表达式语句(参见1.11节),因为整个语句本身就是一个函数调用表达式:

        alert( a );

执行程序

这些编程语句的集合是如何通知计算机来执行任务的呢?程序需要被执行,我们也将这一过程称为运行程序

a = b * 2这样的语句便于开发者读写,但实际上计算机并不能直接理解这种形式。因此,需要通过计算机上一个专门的工具(解释器编译器)将你编写的代码翻译成计算机可以理解的命令。

对某些计算机语言来说,在程序被执行时,对命令的翻译通常是自上而下逐行执行的,这通常被称为代码解释

对另外一些语言来说,这种翻译是预先进行的,被称为代码编译,这样一来,当执行程序时,实际上运行的是已经编译好的、可以执行的计算机指令。

基本上可以说JavaScript是解释型的,因为每次执行JavaScript源码时都需要进行处理。但这么说并不完全精确。JavaScript引擎实际上是动态编译程序,然后立即执行编译后的代码。

有关JavaScript编译的更多信息,参见本系列《你不知道的JavaScript(上卷)》注1:此书已由人民邮电出版社出版。——编者注第一部分中的前两章。