簡體   English   中英

如何在兩個條件下,其中一個可以是多個值中的一個

[英]How to if on two conditions where one can be either of several values

我想檢查一下:

  1. 如果狀態為真且連接類型不是 2 或 6,則執行某些操作。

  2. 如果 state 為 false 且連接類型為 2 或 6,則執行其他操作。

我有以下 if 語句,但有時它使用了錯誤的代碼:

async setWiFiConnection(state){
        try{
            var connType = await driver.getNetworkConnection();
            if(state == true && connType != 2 && connType != 6){
                await driver.toggleWiFi();
            }else if(state == false && connType == 2 || connType == 6){
                await driver.toggleWiFi();
            }
        }catch(err){
            console.log(err);
        } 
    }

我認為問題是如果連接類型為 6,即使 state 為真,則 else if 代碼正在執行。

Dave Newton 的回答正是我所追求的。 我需要將 connType 檢查粘貼在括號中,如下所示:

async setWiFiConnection(state){
        try{
            var connType = await driver.getNetworkConnection();
            if(state == true && connType != 2 && connType != 6){
                await driver.toggleWiFi();
            }else if(state == false && (connType == 2 || connType == 6)){
                await driver.toggleWiFi();
            }
        }catch(err){
            console.log(err);
        } 
    }

謝謝戴夫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM