# 【Day8】賦值運算子、邏輯運算子 ###### tags: `JavaScript` `14th鐵人賽` 這篇文章會說到JavaScript的運算子,簡單介紹兩種: - 賦值運算子 - 邏輯運算子 ## 賦值運算子 假設我有100元,幸運的我今天在路上撿到10元,要計算現在有多少錢時,以往會這樣呈現: ```jsx let walletMoney = 100; walletMoney= walletMoney+10 // 110 ``` 這種方法也沒有問題,但會發現我們重複輸入變數,是不是有更簡短的寫法呢?這種時候就可以用到賦值運算子的寫法啦~ ```jsx let walletMoney = 100; walletMoney+ = 10 // 110 ``` 同樣的結果但在書寫上又更加簡潔 簡單來說就是,將右方的運算元的值賦予左方的運算元,以下也舉其他例子 ```jsx a+ = 1 a- = 1 a* = 1 a/ = 1 ``` ## 邏輯運算子 通常用於布林值的判斷`true、false`呈現邏輯表達式,可以用於同時滿足兩個條件、滿足一個條件時使用 以下舉例不同的邏輯運算子 | 符 | 意思 | 用法 | 描述 | | --- | --- | --- | --- | | && | and | a && b | 兩者都為true返回true 否則將返回false | | \|\| | or | a \|\| b | 其中一者為true 就會返回true 若兩者皆為flase將回傳false | | ! | not | !a | 若能被轉換為true則回傳false 否則回傳true | ```jsx true && false // flase true || false //true !true // false ``` 邏輯運算從左至右計算也可以使用括號先做計算 ```jsx let a =10; console.log((2+3)*2 && a==10) //true ``` 這邊先計算`(2+3)*2=10` and `a==10` 兩者同時滿足,因此回傳`true` 再用一個範例做介紹 ```jsx !("小狗" === 4) && "小貓" === "小貓" //true ``` 同樣由左而右來看`"小狗"===4`為`false` 但加上`!`後為`true`,字串`"小貓"`的話為`true`(只有空字串為`false`)兩者皆為`true ===`右方`"小貓"true、 若有問題或需要補充的都歡迎指教討論唷~