什么是表达式和语句?
表达式指 一个为了得到返回值的计算式 举几个表达式的例子:
1+2 //值为 3
add(1,2) //函数的值为 返回值,这里为 3
console.log //值 为 函数本身
console.log(2) //值为undefined
复制代码
PS:返回值,是函数特有的概念。
语句(statement)是为了完成某种任务而进行的操作.
语句一般会改变环境,可能有值也可能没有值。
var a = 1 + 3 ; //赋值语句
复制代码
语句有 很多种类:赋值语句、函数调用语句、声明语句等等
表达式和语句的区别
语句和表达式的区别在于,前者主要为了进行某种操作,一般情况下不需要返回值;后者则是为了得到值,一定会返回一个值。
标识符的规则
标识符(identifier)指的是用来识别各种值的合法名称。
规则
第一个字符,可以是任意 Unicode 字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线(_)。 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字0-9。
if else 语句
if else
和 switch
都是条件语句,只有满足预设的条件,才会执行相应的语句。
if结构先判断一个表达式的布尔值,然后根据布尔值的真伪,执行不同的语句。所谓布尔值,指的是 JavaScript 的两个特殊值,true表示真,false表示伪。
if(/*条件写在这里*/)
,( )
小扩号内为布尔值。
//if形式一
if(){
// 满足条件时,执行的语句
}
//if形式二
if(){
// 满足条件时,执行的语句
}else{
// 不满足条件时,执行的语句
}
//if形式三
if(){
// 满足条件时,执行的语句
}else if(){
// 满足条件时,执行的语句
}else{
// i 满足条件时,执行的语句
}
复制代码
switch 语句
switch (day) {
case "周一":
// ...
break;
case "周二":
// ...
break;
case "周六":
case "周七":
// ...
console.log('休息日');
break;
default:
// ...
console.log('我佛了,真会过日子~');
}
复制代码
switch语句很简单,简单的地方就不说了。说点 大家都知道 需要注意的地方。
- case 省略 break,语句就会继续执行。如例子中,
var day ='周六'
,我们可以看到输出休息日
,就是因为,case "周六"
没有 break,就没有退出。
while for 语句
while、for都是循环语句,1次、两次、3次~N次 重复执行 同样的 内容。
while
while有两个语句'while'和'do while'。
while
先 判断条件
,true时执行语句
,false时不执行。do while
先 执行语句
,再 判断条件
,当 条件 false时,循环结束。
while (条件) {
语句;
}
do {
语句;
} while(条件)
复制代码
for
for (初始化表达式; 条件; 递增表达式) {
语句
}
复制代码
for语句后面的括号里面,有三个表达式。
- 初始化表达式(initialize):确定循环变量的初始值,只在循环开始时执行一次。
- 条件表达式(test):每轮循环开始时,都要执行这个条件表达式,只有值为真,才继续进行循环。
- 递增表达式(increment):每轮循环的最后一个操作,通常用来递增循环变量。
break continue
break
和continue
很容易记:
break
和continue
是 计算机用来省事、偷懒的代码- break短,所以我后面的事情就不做了,直接跳出 整个循环语句;
- continue长,所以无法跳出整个循环,后面的循环还需要继续执行,只是 此次循环不再继续执行了。
label:
感觉有点像c的 goto语句,不知道哪里不像。 作为一位新手JS学习者,我很喜欢lable:,给我一种很自由、飞一样的感觉。
top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) break top;//当这一句执行的时候,代码会回到top:的位置
console.log('i=' + i + ', j=' + j);
}
}
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
复制代码