JS笔记
JS基本语法
表达式与语句的区别:
表达式是javascript中的一个短句,解释器通常会将其计算出一个结果,一般情况下,语句中包含表达式; javascript程序的执行单位为行,一般情况下,每一行就是一个语句,语句是为了完成某个任务而进行的操作,它通常会改变当前的环境,比如赋值语句。
var a = 3+5
其中3+5就是一个表达式,主要是得到一个返回值8;而加上前面的var a =整个就变成了一个语句,主要是为了完成赋值。
语句一般以;结尾,一个;代表一个语句的结束。
标识符
标识符指的是用来识别各种值的合法名称,最常见的标识符就是变量名和函数名,就如现实生活中的取名一样,会取名必须符合国家规定一样,国家只认在这个规定之内的名称,规定之外的一律不认。 比如在javascript语法中,就对标识符的大小写敏感,大写A和小写a是两个不同的标识符。
具体规则如下:
- 第一个字符,可以是任意 Unicode 字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线(_)。
- 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字0-9
所以像如下符号都是可以使用的。
arg0
_tmp
$elem
π
var 临时变量 = 1;
if语句
if结构先判断一个表达式的布尔值(true和false),再执行不同的语句。
if (m === 3) {
m += 1;
}
//或
if (m === 3)
m = m + 1;
if的结构可以有两种形式,如上代码第一种包含在大括号代码块中可以执行多个语句,而第二种只能执行行语句。
当满足条件时执行语句,当不满足条件时,后面可以接else代码块,表示不满足条件时,所要执行的代码。
if (m === 3) {
// 满足条件时,执行的语句
} else {
// 不满足条件时,执行的语句
}
switch语句
多个if...else连在一起使用的时候,可以转为使用更方便的switch结构。
switch (fruit) {
case "banana":
// ...
break;
case "apple":
// ...
break;
default:
// ...
}
如上代码根据变量fruit的值,选择执行相应的case。如果所有case都不符合,则执行最后的default部分。需要注意的是,每个case代码块内部的break语句不能少,否则会接下去执行下一个case代码块,而不是跳出switch结构。
while循环
While语句包括一个循环条件和一段代码块,只要条件为真,就不断循环执行代码块。
while (条件) {
语句;
}
//或
while (条件)
语句;
//或
while (条件) 语句;
while语句的循环条件是一个表达式,必须放在圆括号中。代码块部分,如果只有一条语句,也可以省略大括号,否则就必须加上大括号。
for循环
for (初始化表达式; 条件; 递增表达式)
语句
// 或者
for (初始化表达式; 条件; 递增表达式) {
语句
}
for语句后面的括号里面,有三个表达式。
初始化表达式(initialize):确定循环变量的初始值,只在循环开始时执行一次。
条件表达式(test):每轮循环开始时,都要执行这个条件表达式,只有值为真,才继续进行循环。
递增表达式(increment):每轮循环的最后一个操作,通常用来递增循环变量。
它也一样,如果只有一个语句,可以省略大括号。
break 语句和 continue 语句
break语句和continue语句都具有跳转作用,可以让代码不按既有的顺序执行。
var i = 0;
while(i < 100) {
console.log('i 当前为:' + i);
i++;
if (i === 10) break;
}
break语句用于跳出代码块或循环。
var i = 0;
while (i < 100){
i++;
if (i % 2 === 0) continue;
console.log('i 当前为:' + i);
}
continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环。
标签(label)
JavaScript 语言允许,语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置,标签的格式如下。
标签通常与break语句和continue语句配合使用,跳出特定的循环。
top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) break top;
console.log('i=' + i + ', j=' + j);
}
}