判断
脚本中通常有的地方能够需要进行判断,以决定接下来要运行哪段代码.
流程图可以帮助我们进行判断规划
判断表达式和条件语句
判断应该包含在一个小括号中, 用来表示返回的是一个值, 做到代码清晰易读
if (条件){
满足true条件时执行的操作
}else{
不满足false条件时执行的操作
};
//例
if ( score > 50 ) {
document.write('You passed');
} else {
document.write('Try again...');
};
- 比较操作符
返回 true 或 false 的单个结果
==
等于-比较两个值是否相同
===
严格等于-比较两个值,并检查它们的数据类型是否完全相同
!=
不等于-比较两个值是否不同
!==
严格不等于-比较两个值,并检查它们的数据类型是否不完全相同
>
大于
>=
大于等于
<
小于
<=
小于等于
- 逻辑操作符
允许将多个比较操作符的结果放在一起, 在进行比较&& 与-检测多个条件
|| 或-检测至少一个条件
! 非-操作一个布尔变量, 然后取反
switch 语句
switch
语句, 当条件中的值和变量值匹配时, 它后面的代码就会被执行
每个 case 表示一个条件
break 语句会停止执行 switch 语句中的其他分支(性能比多个 if 语句要好)
default可以用来处理所有 case 意外的情况
switch (level) { //level传入'one' 'two' 等字符串
case 'one':
title = 'level 1';
breack;
case 'two':
title = 'level 2';
breack;
case 'three':
title = 'level 3';
breack;
default:
title = 'text';
breack;
};
循环
循环检查一个条件,如果这个条件为 true, 那么会执行一段相应的代码;
然后这个条件会被再次检查,如果依然返回true, 那么这段代码会再次被执行;
这个过程会一直反复,知道条件返回 false 为止.
for 循环
如果确定一段代码运行的特定次数,可以用 for 循环.
for 循环使用计数器作为条件
计数器由三条语句组成:初始化(var i = 0) 在循环第一次运行的时候创建并使用
条件(i < 10) 循环最终所到达的数值
更新(i++) 每次循环后计数器的变化规则
for (var i = 0; i < 10; i++) { //这里的(var = i; i < 10; i++)就是一个循环计数器
document.write(i);
};
//例:对数组进行循环
//在循环外先定义变量
var scores = [24, 32, 17];
var arrayLength = scores.length; //以数组长度的数量来确定循环次数
var roundNumber = 0;
var msg = '';
for (var i = 0; i < arrayLength; i++) {
roundNumber = (i + 1);
msg += 'Round ' + roundNumber + ': ';
msg += scores[i] + '</br>'; //用循环次数作为键位, call 出数组的值
}
document.getElementById('answer').innerHTML = msg;
while 循环
如果不确定代码究竟要执行多少次,可用 while 循环. 检查条件只要满足 true 就会一直重复
var i = 1;
var msg = '';
while (i < 10) {
msg += i + ' x 5 = ' + (i * 5) + '<br />';
i++; //注意,这里的计数器是在循环内完成操作,而不像 for 循环写在条件里
}
document.getElementById('answer').innerHTML = msg;
输出结果:
1 x 5 = 5
2 x 5 = 10
3 x 5 = 15
4 x 5 = 20
5 x 5 = 25
6 x 5 = 30
7 x 5 = 35
8 x 5 = 40
9 x 5 = 45
do while 循环
与 while 循环相识,只是即使在返回false 时,花括号中的语句也至少会运行一次
判断+循环示例
//例子用 if else判断是加法还是乘法, 并 用 while 循环输出表格
var table = 3;
var operator = 'addition';
var i = 1;
var msg = '';
if (operator === 'addition') {
// Do addition
while (i < 11) {
msg += i + ' + ' + table + ' = ' + (i + table) + '<br />';
i++;
}
} else {
// Do multiplication
while (i < 11) {
msg += i + ' x ' + table + ' = ' + (i * table) + '<br />';
i++;
}
}
var el = document.getElementById('blackboard');
el.innerHTML = msg;