欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解如何在 JavaScript 中使用三元運算符

 更新時間:2022年10月13日 08:55:41   作者:執(zhí)寧  
這篇文章主要為大家介紹了詳解如何在 JavaScript 中使用三元運算符示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

在本教程中,我們將探討 JavaScript 中三元運算符的語法及其一些常見用法。

三元運算符(也稱為條件運算符)可用于執(zhí)行內(nèi)聯(lián)條件檢查,而不是使用if...else語句。它使代碼更短,更易讀。它可用于根據(jù)條件為變量賦值,或根據(jù)條件執(zhí)行表達(dá)式。

語法

三元運算符接受三個操作數(shù);它是JavaScript中唯一能做到這一點的運算符。您提供一個要測試的條件,后跟一個問號,然后是兩個用冒號分隔的表達(dá)式。如果條件被認(rèn)為為真,則執(zhí)行第一個表達(dá)式;如果它被認(rèn)為是假的,則執(zhí)行最終的表達(dá)式。

它以以下格式使用:

condition ? expr1 : expr2

這里,condition是要測試的條件。如果其值被認(rèn)為是true,expr1則執(zhí)行。否則,如果其值被認(rèn)為是false,expr2則執(zhí)行。

expr1并且expr2是任何一種表達(dá)方式。它們可以是變量、函數(shù)調(diào)用,甚至是其他條件。

例如:

1 > 2 ? console.log("true") : console.log('false');

使用三元運算符進(jìn)行賦值

三元運算符最常見的用例之一是決定將哪個值分配給變量。通常,一個變量的值可能取決于另一個變量或條件的值。

雖然這可以使用if...else語句來完成,但它會使代碼更長且可讀性更低。例如:

const numbers = [1,2,3];
let message;
if (numbers.length > 2) {
  message = '數(shù)組太長';
} else {
  message = '數(shù)組太短';
}
console.log(message); // 數(shù)組太長

在此代碼示例中,您首先定義變量message。然后,您使用該if...else語句來確定變量的值。

這可以使用三元運算符在一行中簡單地完成:

const numbers = [1,2,3];
let message = numbers.length > 2 ? '數(shù)組太長' : '數(shù)組太短';
console.log(message); // 數(shù)組太長

使用三元運算符執(zhí)行表達(dá)式

三元運算符可用于執(zhí)行任何類型的表達(dá)式。

例如,如果您想根據(jù)變量的值決定運行哪個函數(shù),您可以使用以下if...else語句執(zhí)行此操作:

if (feedback === "yes") {
  sayThankYou();
} else {
  saySorry();
}

這可以使用三元運算符在一行中完成:

feedback === "yes" ? sayThankYou() : saySorry();

如果feedback具有 value yes,則將sayThankYou調(diào)用并執(zhí)行該函數(shù)。否則,該saySorry函數(shù)將被調(diào)用并執(zhí)行。

使用三元運算符進(jìn)行空檢查

在許多情況下,您可能正在處理可能有也可能沒有定義值的變量——例如,從用戶輸入檢索結(jié)果時,或從服務(wù)器檢索數(shù)據(jù)時。

使用三元運算符,您可以通過在條件操作數(shù)的位置傳遞變量名稱來檢查變量是否存在null。undefined

這在變量是對象時特別有用。如果您嘗試訪問實際上是nullor的對象上的屬性undefined,則會發(fā)生錯誤。首先檢查對象是否實際設(shè)置可以幫助您避免錯誤。

例如:

let book = { name: '小明', works: '斗破蒼穹' };
console.log(book ? book.name : '張三'); // "小明"
book = null;
console.log(book ? book.name : '張三'); // "張三"

在此代碼塊的第一部分,book是一個具有兩個屬性的對象 -nameworks在上使用三元運算符時book,它會檢查它是否不是nullor undefined。如果不是——意味著它有一個值——name則訪問該屬性并將輸出控制臺。否則,如果它為空,張三輸出控制臺。

因為bookis not null,所以書名會記錄在控制臺中。但是,在第二部分中,當(dāng)應(yīng)用相同的條件時,三元運算符中的條件將失敗,因為bookis null。因此,“張三”輸出控制臺。

嵌套條件

盡管三元運算符是內(nèi)聯(lián)使用的,但可以將多個條件用作三元運算符表達(dá)式的一部分。您可以嵌套或鏈接多個條件來執(zhí)行類似于if...else if...else語句的條件檢查。

例如,一個變量的值可能取決于多個條件。它可以使用if...else if...else

let score = '67';
let grade;
if (score < 50) {
  grade = 'F';
} else if (score < 70) {
  grade = 'D'
} else if (score < 80) {
  grade = 'C'
} else if (score < 90) {
  grade = 'B'
} else {
  grade = 'A'
}
console.log(grade); // "D"

在此代碼塊中,您測試變量的多個條件score以確定變量的字母等級。

可以使用三元運算符執(zhí)行這些相同的條件,如下所示:

let score = '67';
let grade = score < 50 ? 'F'
  : score < 70 ? 'D'
  : score < 80 ? 'C'
  : score < 90 ? 'B'
  : 'A';
console.log(grade); // "D"

評估第一個條件,即score < 50。如果是true,那么 的grade值為F。如果是false,則計算第二個表達(dá)式,即score < 70。

這一直持續(xù)到所有條件都為false,這意味著等級的值將為A,或者直到其中一個條件被評估為true并且其真實值被分配給grade。

示例

在這個實時示例中,您可以測試三元運算符如何在更多條件下工作。 如果您輸入的值小于 100,則會顯示“太低”消息。如果您輸入的值大于 100,則會顯示消息“太高”。如果輸入 100,將顯示“完美”消息。

結(jié)論

正如本教程中的示例所解釋的,JavaScript 中的三元運算符有很多用例。if...else在許多情況下,三元運算符可以通過替換冗長的語句來增加代碼的可讀性。

以上就是詳解如何在 JavaScript 中使用三元運算符的詳細(xì)內(nèi)容,更多關(guān)于JavaScript 三元運算符的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • ES6中定義類和對象的方法示例

    ES6中定義類和對象的方法示例

    這篇文章主要介紹了ES6中定義類和對象的方法,結(jié)合實例形式分析了ES6中類的定義、繼承、靜態(tài)方法、靜態(tài)屬性等相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • JS實現(xiàn)新浪微博效果帶遮罩層的彈出框代碼

    JS實現(xiàn)新浪微博效果帶遮罩層的彈出框代碼

    這篇文章主要介紹了JS實現(xiàn)新浪微博效果帶遮罩層的彈出框代碼,涉及JavaScript響應(yīng)鼠標(biāo)事件動態(tài)操作頁面元素的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • JavaScript仿京東秒殺倒計時

    JavaScript仿京東秒殺倒計時

    這篇文章主要為大家詳細(xì)介紹了JavaScript仿京東秒殺倒計時,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • JavaScript JSON數(shù)據(jù)處理全集(小結(jié))

    JavaScript JSON數(shù)據(jù)處理全集(小結(jié))

    這篇文章主要介紹了JavaScript JSON數(shù)據(jù)處理全集,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • JavaScript編碼小技巧分享

    JavaScript編碼小技巧分享

    這篇文章適合任何一位基于JavaScript開發(fā)的開發(fā)者。我寫這篇文章主要涉及JavaScript中一些簡寫的代碼,幫助大家更好理解一些JavaScript的基礎(chǔ)。希望這些代碼能從不同的角度幫助你更好的理解JavaScript。
    2020-09-09
  • 基于JavaScript實現(xiàn)滑動門效果

    基于JavaScript實現(xiàn)滑動門效果

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)滑動門效果的相關(guān)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • js實現(xiàn)本地持久化存儲登錄注冊

    js實現(xiàn)本地持久化存儲登錄注冊

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)本地持久化存儲登錄注冊,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • js如何判斷用戶是否是用微信瀏覽器

    js如何判斷用戶是否是用微信瀏覽器

    微信內(nèi)置瀏覽器屏蔽了下載鏈接,如果用戶是用微信內(nèi)置瀏覽器打開的,則提示用戶換一個瀏覽器打開頁面,那么該如何判斷用戶是否是用微信瀏覽器呢
    2014-06-06
  • ie與ff下的event事件

    ie與ff下的event事件

    event是ie自帶的一個對象,而ff中不存在該對象,只能通過傳遞參數(shù)的方式來模擬event,:(
    2009-09-09
  • JavaScript基本類型值-Number類型

    JavaScript基本類型值-Number類型

    本文主要介紹了JavaScript基本類型值-Number類型的相關(guān)知識,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02

最新評論