JavaScript 基础
深入数据和类型
函数进阶
运算符
浏览器存储
Document
Web API
事件
工具与规范
实例
练习
JavaScript 中有一个条件运算符 ?
可以帮助我们简化 if
语句。
$$tip
条件运算符 ?
也被称为三元运算符,因为它是仅此一个拥有三个运算元的运算符。
$$
语法:
let result = condition ? expression1 : expression2
- condition:布尔值的判断条件,如果为
true
则执行表达式expression1
并返回值,false
则执行表达式expression2
并返回值。 - result:接收表达式返回的值。
买冰淇淋的例子则可以简化如下。
$$edit$$
$$jsdemo$$
let money = 10
money >= 20 ? alert("买个冰淇凌") : alert("买不起,回家")
由于 alert
函数没有返回值,以下再看一个有返回值的例子。
首先是用 if ... else
实现的例子:
$$edit$$
$$jsdemo$$
let age = prompt("你多少岁了?")
let result
if (age >= 18) {
result = "允许访问"
} else {
result = "请你关掉网站"
}
alert(result)
使用 ?
运算符则可以简化如下:
$$edit$$
$$jsdemo$$
let age = prompt("你多少岁了?")
let result = age >= 18 ? "允许访问" : "请你关掉网站"
alert(result)
不推荐的写法,把 age
和 result
也省略掉:
$$jsdemo$$
$$edit$$
alert(prompt("你多少岁了?") >= 18 ? "允许访问" : "请你关掉网站")
虽然行数变少了,但是会造成代码可读性变差。