1. 三元运算符 ‘?’
有时我们需要根据一个条件去赋值一个变量。
如下所示:
var accessAllowed;
var age = prompt('How old are you?', '');
if (age > 18) {
accessAllowed = true;
} else {
accessAllowed = false;
}
alert(accessAllowed);
三元运算符让我们可以更简短地达到目的。
这个运算符通过问号 ?
表示。被称为“三元”是因为该运算符中有三个操作数。实际上它是 JavaScript 中唯一一个有这么多操作数的运算符。
语法:
var result = condition ? value1 : value2;
计算条件结果,如果结果为真,则返回 value1
,否则返回 value2
。
例如:
var accessAllowed = age > 18 ? true : false;
技术上讲,我们可以省略 age > 18
外面的括号。问号运算符的优先级较低,所以它会在比较运算符 >
后执行。
2. ‘?’ 的非常规使用
有时可以使用问号 ?
来代替 if
语句:
var company = prompt('哪一个公司发明了JS?');
company == '网景' ? alert('Right!') : alert('Wrong.');
根据条件 company =='Netscape'
,要么执行 ?
后面的第一个表达式并显示对应内容,要么执行第二个表达式并显示对应内容。
在这里我们不是把结果赋值给变量。而是根据条件执行不同的代码。
问号 ?
的作用是根据条件返回一个或另一个值。请正确使用它。当需要执行不同的代码分支时,请使用 if
。
文档更新时间: 2023-01-05 17:24 作者:孙老师