JavaScript 三元條件運算子

Harshit Jindal 2023年1月30日 2021年7月3日
  1. 示例:JavaScript 三元條件運算子
  2. 示例:JavaScript 巢狀三元運算子
  3. 示例:JavaScript 三元運算子中的多項操作
JavaScript 三元條件運算子

本教程將介紹如何在 JavaScript 中使用 ?: 條件運算子。

if ... else 語句僅在滿足特定條件時幫助我們執行特定程式碼塊。條件運算子,也稱為三元運算子,是 if ... else 語句的單行簡寫。它有助於編寫乾淨簡潔的程式碼。它是唯一一個需要 3 個運算元的 JavaScript 運算子:要計算的條件,如果條件為 true 時要執行的表示式,以及如果條件為 false 時要執行的表示式。因為它需要 3 個運算元,所以它的名字是三元運算子。

condition ? expression1 : expression2

三元運算子首先評估給定的 condition。條件與 expression1 之間用 ? 分隔並且 expression2expression1: 分隔。如果 condition 為真,則條件運算子執行 expression1,否則執行 expression2

示例:JavaScript 三元條件運算子

var age = 18;
var canVote;
if(age>=18){
 	canVote='yes';
}
else{
	canVote ='no';
}

上面的示例顯示了使用傳統的 if ... else 語句執行的條件語句。

var age = 18;
var canVote = age>=18?'yes':'no';

我們已經使用三元運算子重寫了上面的程式碼。

示例:JavaScript 巢狀三元運算子

if ... else 語句一樣,我們也可以使用巢狀的三元運算子來執行多個條件檢查。

var carSpeed = 90;
var warning = speed >= 100 ? 'Way Too Fast!!' : (speed >= 80 ? 'Fast!!' : 'Nice :)');
console.log(warning);

在上面的程式碼中,我們根據汽車速度為汽車生成警告。首先,我們檢查 carSpeed 是否超過 100,如果條件滿足,我們會生成一個警告說 Way Too Fast!!。否則,我們巢狀了第二個表示式,檢查 carSpeed 是否大於 80 並根據評估顯示 Fast / Nice

示例:JavaScript 三元運算子中的多項操作

我們可以在一個三元運算子中執行多個操作,就像 if ... else 語句一樣。

let isStudent = true;
let primeVideo = 12;
isStudent ? (
  primeVideo = primeVideo/2,
  alert('Enjoy your student discount')
) : (
  alert('You have to pay full price')
);

在上面的程式碼中,我們執行了兩個操作而不是一個,將 primeVideo 的值更改為其一半並提醒使用者。

Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

相關文章 - JavaScript Operator