1. 什么是表达式和语句
JavaScript 中表达式和语句的主要区别在于一条语句执行一个动作,一个表达式产生一个值。意思是一个表达式执行后一定会生成一个值,而语句不一定会产生值。语句主要是用来执行动作,程序就是由一系列语句组成。
一般情况下,在js里每一行就是一个语句。
语句是为了完成某种任务而进行的操作,比如赋值语句:
var a = 1+3;
在这条语句中,上面的1+3就是表达式。
语句和表达式的区别在于,语句是为了进行某种操作,一般情况下不需要返回值,而表达式都是为了得到返回值,一定会返回一个值(这里的值不包括undefined) 。
-
表达式分为基本的表达式(包括基本关键字),还有左值表达式以及运算符。
-
语句分为声明语句、流程控制语句和其他语句。其中,流程控制语句分为基本流程控制语句、迭代语句、跳转语句和条件语句。
2. 标识符的规则
标识符其实就是一个名称。该名称可用来命名变量、函数或属性,或者用作 JavaScript 代码中某些循环语句中的跳转位置的标签。命名标识符时可以任意命名,但需要注意的是,必须符合一定的命名规范。
在 JavaScript 中,标识符命名规范和 Java 以及其他许多语言的命名规范相同,主要规范如下:
标识符第一个字符必须是字母、下划线
_或美元符号$,其后的字符可以是字母、数字或下划线、美元符号;自定义的标识符不能和 JavaScript 中的关键字及保留字同名,但可以包含关键字或保留字。关键字及保留字介绍请参见本节后面的内容介绍;
标识符不能包含空格;
标识符不能包含
+、-、@、#等特殊字符;由多个单词组成的复合标识符命名主要有两种方式:
- 一是使用下划线连接各个单词,每个单词全部小写,例如:dept_name。
- 二是使用驼峰式,其中又分大驼峰和小驼峰。大驼峰的格式是每个单词的首字母大写,其余字母小写,例如:DeptName;小驼峰的格式是第一个单词全部小写,第二单词开始的每个单词首字母大写,其余字母小写,例如:deptName。
合法标识符示例:
user_name
userName
_name
$name
ab
ab123
非法标识符示例:
1a //第一个字符为数字
a b //标识符包含空格
a@b //标识符包含特殊符号
while //关键字
JavaScript 关键字是指具有特定含义的标识符,比如用于表示控制语句的开始或结束,或者用于执行特定操作,它们将在特定的场合中使用。JavaScript 保留字指目前还不具有特定含义,但将来可能会用来表示特定含义的标识符,比如 class 标识符。
为了不引起不必要的问题,不可以使用 JavaScript 关键字和保留字作变量名或函数名。下表列出了 JavaScript 常见的一些关键字和保留字。
| var | new | boolean | float | int | char |
|---|---|---|---|---|---|
| byte | double | function | long | short | true |
| break | continue | interface | return | typeof | void |
| class | final | in | package | synchronized | with |
| catch | false | import | null | switch | while |
| extends | implements | else | goto | native | static |
| finally | instaceof | private | this | super | abstract |
| case | do | for | public | throw | default |
| let | arguments | const | if | try | eval |
3. if else 语句
语法 :
-
if ( 表达式1 ){ 语句1 } else { 语句2 }
-
{ } 在语句只有一个时,可以省略;
if语句指定了在条件为真时执行的代码块:
if ( condition ) {
如果条件为真执行该代码块\
}
else语句指定在条件为false时执行的代码块:
if ( condition ) {
如果条件为真执行该代码块
} else {
如果条件为假执行该代码块
}
else if语句在第一个条件为假时指定了新的条件:
if ( condition1 ) {
如果condition1为真执行该代码块
} else if ( condition2 ) {
如果condition1为假且condition2为真执行该代码块
} else {
如果condition1为假且condition2为假执行该代码块
}
4. while for 语句
while 语句可以在某个条件表达式为真的前提下,循环执行指定的一段代码,直到那个表达式不为真时结束循环。
语法:
while (condition)
statement
condition
- 条件表达式,在每次循环前被求值。如果求值为真,
statement就会被执行。如果求值为假,则跳出while循环执行后面的语句。
statement
- 只要条件表达式求值为真,该语句就会一直被执行。要在循环中执行多条语句,可以使用块语句(
{ ... })包住多条语句。
注意:使用break语句在condition计算结果为真之前停止循环。
for 是 while 语句的方便写法
for ( 语句1;表达式1;语句2 ) {
循环体
}
-
先执行语句1
-
然后判断表达式1
-
如果为真,执行循环体,执行语句2
-
如果为假,直接退出循环,执行后面的语句
5. break continue
break : 打破语句用于跳出循环(跳出所有循环)。
continue : 用于跳过循环中的一个迭代(跳出当前一次循环)。
6. label
标记语句可以和 break 或 continue 语句一起使用。标记就是在一条语句前面加个可以引用的标识符。
语法:
label :
statement
label
- 任何不属于保留关键字的 JavaScript 标识符。
statement
- JavaScript 语句。
break可用于任何标记语句,而continue可用于循环标记语句。