JavaScript_条件语句

1. 语句

  • 语句,也被称为流控制语句,而ECMAScript 中的大部分语法都体现在语句中。通过使用一个或多个关键字完成即定任务,语句可以简单,也可以复制

2. if 语句

  • 在一些特殊情况中我们需要根据不同条件执行不同的操作,也称为流程控制语句。
  • 这样就可以使用 if 语句和条件运算符 ?: 来实现
if(condtion) statement1 else statement2;
  • 这里的 condtion 可以是任何表达式 ,并且求值结果不一定是布尔值,ECMAScript 回自动调用 boolean() 函数将这个表达式的值进行布尔转换,如果为真,就执行 statement1,如果为假,就执行 statement2 。
if(i < 10){
    console.log("than 10")
}else{
    console.log("else to 10")
}
  • 当然也可以这样
if(condtion1) statement1 else if(condtion2) statement2 else statement3
let num = +prompt("请输入一个数字")
// 列子
if(num > 20){
	console.log("你输入的内容大于 20")
}else if(num < 20){
	console.log('你输入的内容小于 20')
}else{
	console.log("你输入的不规范")
}

条件运算符 ?:

  • 有时我们需要根据一个条件去赋值一个变量。
let age = prompt("How old are you?",'');
let accessAll;
if(age > 18){
    accessAll = true
}else {
    accessAll = false
}
console.log(accessAll)
  • 上述我们通过 条件 的方式去获取一个变量的 truefalse
  • 同时我们也可以通过 ? 号的方式,这种方式同时也被称为 三元运算符
  • 语法:
let result = condition ? value1 : value2
  • 计算条件执行 如果 condition 结果为真,就返回 value1, 否则返回 value2
let age = prompt("请输入年龄?");
let accessAll = (age > 18) ? true : false;
console.log(accessAll)

添加括号使代码更具有可读性,推荐使用

  • 也可以多运算条件
let age = prompt('age?',18);
let message = (age < 3) ? 'hi,baby!' :
	(age < 18) ? 'hello' :
	(age < 100) ? 'greetings':
	"what an unusual age!";
console.log(message)
  • 可以看到 第一个问号的时候检查 age < 3 如果为真 则返回 hi,baby,否则继续往下走执行 age < 18

  • 为真返回 hello ,为假则继续往下执行 age < 100为真则返回greetiongs,为假则执行最后一个:号后面的表达式,返回wath an unusual age!`

  • 下面在通过if的形式实现一下

let age = prompt('age?',18);
let message;
if(age < 3){
    message = 'hi,baby!'
}else if(age < 18){
    message = 'hello'
}else if(age < 100){
    message = 'greetings'
}else {
    message = 'what an unusual age!'
}
console.log('message:',message)

4. switch 语句

  • switch 语句是与 if 语句紧密相关的一种 流控制语句
switch(expresion){
    case value1:
        statement;
        break;
    case value2:
        statement;
        break;
    case value3:
        statement
        break;
    default:
        statement;
}
  • 这里的每个 case(条件、分支) 相当于:如果表达式等于后面的值,则执行下面对应的语句。
  • break 关键字会导致代码执行完之后跳出 switch 语句,如果没有break,则代码会继续匹配下一个条件,default 关键字用于在任何条件都没有满足的时指定的默认执行语句 (相当于 else 语句)
if (i == 25) { 
 console.log("25"); 
} else if (i == 35) { 
 console.log("35"); 
} else if (i == 45) { 
 console.log("45"); 
} else { 
 console.log("Other"); 
} 

// 也可以这样写
switch (i) { 
 case 25: 
 console.log("25"); 
 break; 
 case 35: 
 console.log("35"); 
 break; 
 case 45: 
 console.log("45"); 
 break; 
 default: 
 console.log("Other"); 
} 

注意:switch 在比较每个条件的值时会使用全等操作符,因此不会强制转换数据类型 (比如 ‘10’ 不等于 10 )

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值