iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 6
0
Modern Web

JavaScript初心者ノ研究日記。系列 第 6

六日目:JavaScript 運算子 演算子 二ノ章

日安٩(ˊᗜˋ*)و SONYKO だよ〜♫
DAY 6 繼續介紹運算子 。我發現運算子的點閱率很低
 

# ゚Д゚) En Zan Shi !!!!

 


邏輯運算子 Logical operators

這個比較好理解( 個人認為 )
邏輯運算子只有三種符號而已!但長得很怪 ww

邏輯運算子 通常會和判斷式 if 、else 一起使用, if 、else 就是字面上的意思,可以無痛學習!看幾個例句你就會了,所以下面舉例程式碼我就直接帶上去用歐。

那就來認識一下他們吧:
 

■ && ( 邏輯AND )

這個運算子用來接條件,條件一 && 條件二 。你要講「判斷」也可以,判斷一 && 判斷二,差不多意思!

假如我今天要收服神奇寶貝,我只要水系的、然後要可愛的我不要醜的,變成程式碼:

var pokemon = '火系神奇寶貝'
var isCute = true

if(pokemon === '水系神奇寶貝' && isCute === true ){
	console.log (`就決定是你了!`)
}else {
	console.log (`我不要你 你走開!`)
}

結果會是 「 我不要你 你走開! 」
因為他其中一個條件不符合,我要的是水系但他是火系,雖然很可愛但我只要水系的。

所以大家就知道 && 這個運算子的意思就是「條件要全部符合」。
 
 

■ || ( 邏輯OR )

相信我還沒介紹,你大概就知道這是什麼了。他都說是 or 了 (((
這個運算子跟上面那個相反,只要符合一項就會成立。

來直接看範例吧:

/* 情境:大家都說,肥宅是一種精神。不一定是肥的人才是肥宅。
	我是瘦的,但我是個肥宅我驕傲 。 */
var isOTAKU = true
var isFat = false

if( isOTAKU == true || isFat == true ){
	console.log(`你是肥宅`)
}else {
	console.log (`你不夠格當肥宅`)
}

答案當然是 「 你是肥宅 」。因為我符合其中一項條件。
 
 

■ !( 邏輯NOT )

這個比較沒那麼常用到,簡單來說就是:

在 true 前面加驚嘆號,他就會變成false 。
在 false 前面加驚嘆號,他就會變成 true 。

var a = !true 
console.log (a)          // false

var b = !false
console.log (b)          // true

  

接下來我們來看邏輯運算子一些奇妙的範例:

/*    邏 輯 A N D    */
var a = true && true
var b = true && false 
var c = false && ( 4 > 3 )
var d = "我17歲" && "你騙人"
var e = true && "我17歲"
var f = false && "我17歲"

/*    邏 輯 O R    */
var g = true || false 
var h = false || false
var i = (3 < 2) || true
var j = "我17歲" || "你騙人"
var k = "我17歲" || false

/*    邏 輯 N O T    */
var l = !true
var m = !false
var n = !"我17歲"

答案附上:

/*  邏 輯 A N D  */
a = true 
b = false
c = false
d = "你騙人"
e = "我17歲"
f = false

/*  邏 輯 O R  */
g = true
h = false
i = true
j = "我17歲"
k = "我17歲"

/*  邏 輯 N O T  */
l = false
m = true
n = false

從範例 e、k 、n 可以看出 字串會轉為 true
你可能會疑惑 那 d 跟 j 的答案為什麼會是那樣?
我只能跟你說,這個可能要記一下

  


賦値運算子 Assignment operators

這個已經不是數學了 (´・ω・`) ...

還記得我們講變數的時候都會說「賦予變數値」嗎?
這邊賦値也是一樣的意思歐,x = y 會解讀成「把 y 的値 賦予給 x 」,當然這個 x = y 就是最基本的賦値運算子。

賦値運算子還能跟算數做結合,讓我們不再只會 a++ 跟 b-- 。

 運算子   攤開來看
 a += b   a = a + b 
 a -= b   a = a - b 
 a *= b   a = a * b 
 a /= b   a = a / b 
 a %= b   a = a % b 

 
那這類的 賦値運算子會用在什麼地方呢?
我做了一個 按下去 會一直 +1 的按鈕,就是用 a += 1 去做的。

以後還會有很多時機會用到賦値運算子,先把他們記起來歐歐~♫
 
  


逗號運算子 Comma operator

逗號不外乎就是 「 , 」。
不知道大家有沒有看過 for 迴圈,for 迴圈語法中就超多逗號。

for ( a=0 ,b=5 ;a < 5 ;a++ ,b++ ){
	c = a + b
}
console.log(c)      // 13

來講解一下 這個 for 迴圈程式碼:

for ( 初始値 ; 目標 ; 沒達到目標就一直輪迴 ),求a 和 b 最後的値,兩個相加得到 c 。

所以迴圈執行第一次:

  a = 1 , b = 6( a 還沒到極限,所以跑第二輪 )
  a = 2 , b = 7( a 還是沒到極限,所以跑第三輪 )
  a = 3 , b = 8( a 還差一點! 再跑第四輪 )
  a = 4 , b = 9( 再跑下去a 就會 =5 了,迴圈到此為止 )
  c = 4 + 9
  所以最後答案為 13 。

所以,逗號運算子跟 for 迴圈到底有什麼關係啊?

逗號運算子 主要的作用就是分隔運算式,讓運算式可以循序執行( 左 → 右 )
並會回傳最後一個運算式的値。

所以逗號運算子的用意就是 —— 用來分隔多組運算式 。

除了迴圈之外還有像:

var a = 10, b = 20 ;
console.log ( a , b )      // 10 , 20

雖然可以這樣寫,但通常不會這樣寫,因為滿難解讀的 。

 


字串運算子 String operators

字串運算子就是可以把字串跟字串加起來。結束。

/* 字串運算子 範例 */
var a = '我' + '好可愛'
console.log(a)                     // '我好可愛'

/* 可以搭配賦値運算子 */
var b = '我'
b += '好可愛'
console.log(b)                     //  '我好可愛'

 
 


研究心得

運算子大概就這樣,分了兩篇介紹,我怕打太長會被關網頁 555

對我來說,重新認識運算子還滿有趣的。
因為一開始學JS 的時候我其實不知道運算子是幹嘛的((

應該滿多人也是這樣的哈哈,會知道這些東西叫運算子,可是不知道運算子到底是什麼。
然後在你看完運算子章節之後,你寫程式也不會特別去說「我現在要用算數運算子!」

就像你知道貓貓獅子是貓科、海豹是海豹科,可是沒事也不會特別去講「欸!你看那邊有貓科動物欸!」
... 好吧我知道這個舉例滿爛的(´・ω・`)
 
 
今天就講到這邊~♫ じゃあね〜♫
 
  


(●´3`)ノ SONYKO 的 前端日本語教室 。'、+

今天一樣提供關於運算子的日文單字 & 唸法,
但我最近一直在想 打羅馬拼音大家好不好念 ...
找一天來錄發音好惹(´∇`;)

運算子相關單字:

日本語 平仮名 中.英 羅馬拼音
論理演算子 ろんりえんざんし 邏輯運算子 Ron Ri En Zan Shi
代入演算子 だいにゅうえんざんし 賦値運算子 Dai Niu En Zan Shi
カンマ演算子 かんまえんざんし 逗號運算子 Kan Ma En Zan Shi
文字列演算子 もじれつえんざんし 字串運算子 Mo Ji Retsu En Zan Shi

 
 
其他單字:

日本語 平仮名 中.英 羅馬拼音
forループ forるーぷ for迴圈(for loop ) for Ru~ Pu

 
 
來介紹一些 完整句子的唸法:

  • var a = 1
    var a いこーる いち
    ( Va Ei IKo~Ru IChi )
     
  • console.log(a) 結果は 1
    こんそーるろぐ a けっか は いち
    ( KonSo~RuRoGu Ei Kekka Wa IChi )
     
  • 2 + 4 = 6
    に たす よん は ろく
    ( Ni TaSu Yon Wa RoKu )
     
  • 6 * 7 = 42
    ろく かける なな は よんじゅうに
    ( RoKu KaKeRu NaNa Wa YonJuNi )
     
  • 8 > 9 結果は False
    はち おおなり きゅう けっかは ふぉーるす
    ( HaChi OONaRi Kyuu Kekka Wa Fo~RuSu )
     

先到這邊 ( ˘ω˘ )

追記: 發音檔補上


上一篇
五日目:JavaScript 運算子 演算子 一ノ章
下一篇
七日目:JavaScript if...elseノ章
系列文
JavaScript初心者ノ研究日記。30

尚未有邦友留言

立即登入留言