javascript - 關於運算優先順序

來源:互聯網
上載者:User
對於
$a < $b || $c == $d && $e < $f

是不是可以這麼理解:
$a < $b || $c == $d;
同時
$c == $d && $e < $f;
而且
$a < $b 與 $e < $f 沒有邏輯上的關係?

是不是其他語言的優先順序也是這麼用的?

回複內容:

對於
$a < $b || $c == $d && $e < $f

是不是可以這麼理解:
$a < $b || $c == $d;
同時
$c == $d && $e < $f;
而且
$a < $b 與 $e < $f 沒有邏輯上的關係?

是不是其他語言的優先順序也是這麼用的?

$a < $b || ($c == $d && $e < $f)

&& 優先順序高於 || 。

樓主不要鑽這個角。團隊開發中是不許允這麼寫的。

三個邏輯運算子從高到低: not and or

首先,這種寫法在開發的過程中不推薦,一般會被kill。
1.此運算式有比較子和邏輯運算子,其中邏輯運算子&&和邏輯運算子||。
對於PHP來說比較子的優先順序高於邏輯運算子&&和||,但是邏輯運算子&&優先順序高於邏輯運算子||

$a < $b || $c == $d && $e < $f
所以運算結果是這樣的:第一步是運算子比較:($a<$b)||($c==$d)&&($e<$f)
運算子比較完之後再比較|| 或者 &&
如果($a<$b)為true,則這個運算式結果為true
若:($a<$b)為fasle,且($c==$d)和($e<$f)其中一個為fasle,則結果為false.

這都是高人...我從來不研究這種問題,很麻煩

(($a < $b) || ($c == $d)) && ($e < $f)

這樣不好嗎?

難道你保證以後就不再看這段代碼嗎?自己看的時候難道不需要思考嗎?那為什麼給自己找麻煩?

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.