主页

JavaScript - 条件(三元)运算符

2024-06-22 03:15PM

条件(三元)运算符是JavaScript唯一使用三个操作数的运算符:一个条件后跟一个问号(?),如果条件值为真,则执行冒号(:)前的表达是;若条件为假,则执行最后的表达式。

条件(三元)运算符经常当做if...else语句的简捷形式来使用

语法

condition ? exprIfTrue : exprIfFalse

condition:计算结果用作条件的表达式

exprIfTrue:如果condition的计算结果为真值(等于或可以转换为true的值),则执行该表达式

exprIfFalse:如果condition为假值(等于或可以转换为false的值)时执行的表达式

描述

处理false,可能的假值表达式还有:null、NaN、0、空字符串("")和underfined。如果condition是其中任何一个,那么条件表达式的结果就是exprIfFalse表达式执行的结果

示例:

简单的示例:

const age = 26;
const beverage = age >= 21 ? "Beer" : "Juice";
console.log(beverage); // 输出 "Beer"

处理null值:

一个常见的用法是处理可能为null的值:

const greeting = (person) => {
  const name = person ? person.name : "stranger";
  return `Howdy, ${name}`;
};

console.log(greeting({ name: "Alice" })); // 输出 "Howdy, Alice"
console.log(greeting(null)); // 输出 "Howdy, stranger"

条件链:

三元运算符是右结合的,这意味着它额可以按一下方式“链接”起来,类似于if...else if...else if...else链:

function example() {
  return condition1
    ? value1
    : condition2
      ? value2
      : condition3
        ? value3
        : value4;
}

上面的代码等价于以下if...else链

function example() {
  if (condition1) {
    return value1;
  } else if (condition2) {
    return value2;
  } else if (condition3) {
    return value3;
  } else {
    return value4;
  }
}

 

返回>>

登录

请登录后再发表评论。

评论列表:

目前还没有人发表评论