语句
条件语句
JavaScript 程序的执行单位为行,一般情况下,每一行就是一个语句。
语句是为了完成某种任务而进行的操作。
表达式是指一个为了得到返回值的计算式。
语句和表达式的区别:
前者主要为了进行某种操作,一般情况下不需要返回值;
后者则是为了得到返回值,一定会返回一个值。
- if
“布尔值”往往由一个条件表达式产生的,必须放在圆括号中,表示对表达式求值。如果表达式的求值结果为true,就执行紧跟在后面的语句;如果结果为false,则跳过紧跟在后面的语句。
if(条件表达式){
语句;
}
- if…else
if(条件表达式){
//满足条件执行
}else{
//不满足条件执行
}
- switch
代码根据变量x的值,选择执行相应的case。
如果所有case都不符合,则执行最后的default部分。
每个case代码块内部的break语句不能少,否则会接下去执行下一个case代码块,而不是跳出switch结构。
switch语句中的变量,与case语句后面的表示式比较运行结果时,采用的是严格相等运算符(===),这意味着比较时不会发生类型转换。
switch(x){
case 1:
语句;
break;
case 2:
语句;
break;
default:
语句;
}
- 三元运算符
(条件) ? 表达式1 : 表达式2
如果“条件”为true,则返回“表达式1”的值,否则返回“表达式2”的值。
循环语句
- while循环
while (条件){
语句;
}
- do…while循环
与while循环类似,唯一的区别就是先运行一次循环体,然后判断循环条件。
不管条件是否为真,do…while循环至少运行一次。
while语句后面的分号注意不要省略。
do {
语句
} while (条件);
- for循环
break语句和continue语句都具有跳转作用,可以让代码不按既有的顺序执行。
break语句用于跳出代码块或循环。
continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环。
for (初始化表达式; 条件; 递增表达式) {
语句
}
- 标签label
相当于定位符,用于跳转到程序的任意位置,标签的格式如下。
标签可以是任意的标识符,但不能是保留字。
标签通常与break语句和continue语句配合使用,跳出特定的循环。
label:
语句
变量
var是变量声明命令。它表示通知解释引擎,要创建一个变量。如果只是声明变量而没有赋值,则该变量的值是undefined。使用var重新声明一个已经存在的变量,是无效的,但如果第二次声明的时候还进行了赋值,则会覆盖掉前面的值。
JavaScript 是一种动态类型语言,也就是说,变量的类型没有限制,变量可以随时更改类型。
变量提升
JavaScript 引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升。
标识符
标识符指的是用来识别各种值的合法名称。最常见的标识符就是变量名,以及后面要提到的函数名。
标识符命名规则如下:
- 第一个字符,可以是任意 Unicode 字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线()。即可以是字母、&和,不可以是数字。
- 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字0-9。即不可以含+、-、*。
注释
- 单行注释,用//起头;
- 多行注释,放在/和/之间
区块
JavaScript 使用大括号,将多个相关的语句组合在一起,称为“区块”。
区块对于var命令不构成单独的作用域,与不使用区块的情况没有任何区别。