下边分享js中两种常使用的语句类型,分别是条件判断语句和循环判断语句
条件判断语句
if语句
if是最基本、最常用的流程控制语句。
语法:if(判断语句){代码块} else {代码块}
//判断是否是闰年
var year = prompt("请输入年份:");
if (year%4==0&&year&100!=0||year%400==0){
alert("您输入的是闰年");
}
else{
alert("您输入的是平年");
}
if ... else if
if语句进阶 为 if...else if
语法:if(判断条件){代码块} else if{判断条件}{代码块} else{代码块}
//比较两个数的大小
var num1 = prompt("请输入第一个数:");
var num2 = prompt("请输入第二个数");
if (num1 > num2){
alert("第一个数大");
}
else if(num1 == num2){
alert("两个数相等");
}
else{
alert("第二个数大");
}
if语句嵌套
if语句嵌套表现在 if语句中存在着另一个if语句
语法:
//判断abc中的最大值
if (a>b){
if (a>c)
max=a;
else
max=c;
}
else{
if (b>c)
max=b;
else
max=c;
}
switch语句
switch语句也是多分支语句,功能与if...else语句类似,不同的是它只能针对某个表达式的值做出判断。
语法:
switch (expression){
case judgement 1:
statement 1;
break;
---
case judgement n:
statement n;
break;
default:
statement n+1;
break;
}
case 分支否常跟常数或常数表达式; break用于结束switch语句
//查询水果的价格
var fruit = prompt("亲输入查询的水果:");
switch(fruit) {
case '苹果':
alert("苹果3.5/斤");
break;
case '箱里':
alert("苹果3/斤");
break;
default:
alert("没有此水果");
}
if语句与switch语句做比较:
if语句代码逐条执行
switch语句 是命中机制,速度更快
但是switch的case后边必须跟常量表达式,所以有一定的使用限制
return与break与continue作比较:
return 返回一个值并结束函数
break结束循环操作
continue结束本次循环
循环语句
while语句
语法:while(条件表达式){ //循环体 }
while语句可能一次也不执行
//求1-100间所有整数的和
var sum = 0;
var i = 1;
while (i <= 100){
sum += i;
i++;
}
console.log(sum);
do while语句
语法:do { //循环体 } while { //条件表达式 };
do while语句 至少执行一次
//求1-100间所有整数的和
var sum = 0;
var i = 1;
do {
sum += i;
i++;
} while (i <= 100);
console.log(sum);
for语句
语法:for (初始化变量;条件表达式;操作表达式) { //循环体 }
执行顺序:初始化变量,判断条件式是否满足条件,满足执行循环体,接着执行操作表达式;条件表达式不满足时,结束循环
//生成九九乘法表
var str = '';
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <= i; j++) {
str += j + '×' + i + '=' + i * j + '\t';
}
str += '\n';
}
console.log(str);
while(1){ // 循环体 }
此种形式时 表示为死循环