条件判断语句
选择语句if
语法:
if (condition) {
statement1
} else if (condition) {
statement2
} else {
statement3
}
示例:
var age = 20;
if (age >= 18) { // 如果age >= 18为true,则执行if语句块
alert('adult');
} else { // 否则执行else语句块
alert('teenager');
}
三元(目)运算符
语法:表达式1 ? 表达式2 : 表达式3
如果表达式1的布尔值为true,则执行表达式2,否则执行表达式3。
是JS语言中唯一一个需要三个操作数的运算符。
示例:
var age = 20;
age >= 18 ? alert('adult') : alert('teenager');
switch语句
语法:
switch (expression) {
case value:
statement
break;
case value:
statement
break;
default:
statement
}
判断周几
var week = new Date().getDay();
switch (week) {
case 0:
alert('周日');
break;
case 1:
alert('周一');
break;
case 2:
alert('周二');
break;
case 3:
alert('周三');
break;
case 4:
alert('周四');
break;
case 5:
alert('周五');
break;
case 6:
alert('周六');
break;
}
- break可以省略,如果省略,代码会继续执行下一个case
var a = 20;
switch (a) {
case 10:
console.log('10');
case 20:
console.log('20');
case 30:
console.log('30');
default:
console.log('其余');
}
//结果打印出20,30,其余
//没有break,符合条件的case后的case语句都会执行,不管条件是否符合
- 在比较值时使用的是全等操作符,因此不会发生类型转换(例如,字符串 “10” 不等于数值 10)。
var a = '20';
switch (a) {
case 10:
console.log('10');
case 20:
console.log('20');
case 30:
console.log('30');
default:
console.log('其余');
}
//结果打印出'其余',因为a为字符串类型,case中的20为数值类型,不能匹配
把百分制转换成优良中可差
//方法一:
var score = 88;
switch (true) {
case score >= 90:
console.log('A');
break;
case score >= 80:
console.log('B');
break;
case score >= 70:
console.log('C');
break;
case score >= 60:
console.log('D');
break;
default:
console.log('E');
}
//方法二:
var score = 88;
score = parseInt(score / 10);
switch (score) {
case 10:
console.log('A');
break;
case 9:
console.log('A');
break;
case 8:
console.log('B');
break;
case 7:
console.log('C');
break;
case 6:
console.log('D');
break;
default:
console.log('E');
}