分支结构
循环结构
程序默认就是由上到下顺序执行的
- 分支结构
根据不同的情况,执行对应的代码
- 循环结构
重复做一件事情
分支结构
if语句
if(/*条件表达式*/){
//执行语句
}
if (/*条件表达式*/) {
//执行语句
} else {
//否则执行语句
}
if (/*条件1*/) {
//成立执行语句
} else if (/*条件2*/) {
//成立执行语句
} else {
//最后默认执行语句
}
三元运算符
表达式1? 表达式2 :表达式3
是对if...else语句的一种简化写法
int max = 0;
if (a > b) {
max = a;
} else {
max = b;
}
System.out.println(max);
解析:如果 ? 前的表达式为 true 则 max = a ,否则 max = b。
布尔类型的隐式转换
数据类型的隐式转换:字符串类型string>数值类型number>布尔类型boolean
数字+字符串:数字需要转成字符串
数字+布尔值:布尔值需要转成数字(true转成1,false转成0)
字符串+布尔值:布尔值需要转成字符串(true转成"true",false转成"false")
布尔值+布尔值:布尔值需要转成数字(true转成1,false转成0)
switch 语句
请使用 switch 语句来选择要执行的多个代码块之一。
switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
与 case 1 和 case 2 不同时执行的代码
}
工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。
实例
var num = parseInt(prompt("输入数量"))
switch (num) {
case 1:
alert("你是我唯一")
break;
case 3:
alert("I Love You")
break;
case 99:
alert("天长地久")
break;
default:
alert("没有对应的花语")
break;
}
实例效果:
循环结构
在JavaScript中有三种循环结构,while、do..while、for循环。
while语句的基本语法:
当循环条件为true时,执行循环体,
当循环条件为false时,结束循环。
while语句
while(条件表达式)返回的是布尔类型){
1.循环体(当while后面的条件表达式值为true时)
}
var i = 0;
while (i < 10){
console.log(i);
i++;
}
//while循环会先判定条件,再根据条件是否成立达成决定是否进入循环
//如果条件一开始就是false ,则不会进入循环
缺点:
-
使用while语句的时候,一定要写大括号
-
如果没有条件的话,会无限的运行下去,造成死循环。
do...while语句
定义和用法
do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。
JavaScript 支持不同类型的循环:
- for - 循环可以将代码块执行指定的次数。
- for/in - 循环遍历对象的属性
- while - 当指定的条件为 true 时循环指定的代码块
- do/while - 同样当指定的条件为 true 时循环指定的代码块,但该循环在判断条件前会执行一次代码块
语法
do {
执行代码
} while (condition);
循环至少执行一次,即便条件为 false,因为代码块是在条件语句判断前执行:
var text = ""
var i = 0;
do {
text += "<br>数字为 " + i;
i++;
} while (i < 5);
console.log(text)
text 输出结果为: 数字为 0 数字为 1 数字为 2 数字为 3 数字为 4
参数
for 循环
循环可以将代码块执行指定的次数。
一般写法:
document.write(cars[0] + "<br>");
document.write(cars[1] + "<br>");
document.write(cars[2] + "<br>");
document.write(cars[3] + "<br>");
document.write(cars[4] + "<br>");
document.write(cars[5] + "<br>");
使用for循环
for循环的表达式之间用的是;号分隔的,千万不要写成,
for(初始化表达式1;判断表达式2;自增表达式3){
循环体4
}
for (var n = 1; n < 11; n++) {
document.write("你好")
document.write("<br>")
}
实例:
var result = 1
for (var i = 1; i < 4; i++) {
result *= i
}
console.log(result)
result输出为6
循环嵌套
一个循环结构内可以含有另一个循环,称为循环嵌套,又称多重循环。常用的循环嵌套是二重循环,外层循环称为 外循环,内层循环称为内循环。
//打印直角三角形;var start = '';
for (var i = 0; i<10; i++ ){
for (var j= 0; j=i; j++){
start += "*";
}
start += "\n";
}
console.log(start);
continue和break
- break:while循环break是用于永久终止循环。即不执行本次循环中break后面的语句,直接跳出循环。
- continue:while循环continue是用于终止本次循环。即本次循环中continue后面的代码不执行,进行下一次循环的入口判断。
break语句
break 语句可用于跳出循环。
break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话):
for (i=0;i<10;i++)
{
if (i==3)
{
break;
}
x=x + "The number is " + i + "<br>";
}
continue 语句
continue 语句中断当前的循环中的迭代,然后继续循环下一个迭代。 以下例子在值为 3 时,直接跳过:
for (i=0;i<=10;i++)
{
if (i==3) continue;
x=x + "The number is " + i + "<br>";
}