
嗨~我是文科少女!
今天來聊聊運算子~
從文字上來拆解運算子指的也就是用來運算的符號,至於是用來運算什麼的呢?
那就讓我們接著看下去吧!
在JavaScript世界裡面的運算子,分為以下四種。
算數運算子、賦值運算子、比較運算子、邏輯運算子
接下來就來用文科腦來為大家說明差異~
1. 算數運算子:簡單來說就是用來計算數字的符號,最基本的也就是加減乘除,所以通常會在計算數值的時候使用。
基本的運算子符號
加:+ (ex: 2 + 1=3)
減:- (ex: 8 - 1=9)
乘:* (ex: 3 * 2=6)
除:/ (ex: 10 / 2 = 5)
其他較特別的運算子符號
取餘數:% (ex: 10 % 2 印出結果是0、 8 % 3 印出結果是1)
*取餘數意思是前後數字相除的餘數,如果可整除顯示0,除無法整除就會顯示1。
將值增加1:++ (ex: x=2的時候,x++會讓x變成3)
將值減少1:-- (ex: x=2的時候,x--會讓x變成1)
指數:** (ex: 3**2 等於3的二次方,也就會變成9)
注意!!以上內容主要都是在計算數值時會出現,不過其中++和--有一個比較會讓人搞混的地方,花點時間來了解一下吧^^
在JavaScript中,寫成++x和x++會印出不一樣的結果喔!
當寫成x++時,系統會先顯示一次x再進行+1
當寫成++x時,系統則會先進行+1動作在顯示+1後的x
所以當我們用console.log印出相關內容時,就會有以下的結果出現
在console.log中的第一個x非常好理解,就是等於4
第二個x則是可以拆解為上面所提到的,先印出目前的x的動作
*它到底+1了沒???
=>第二個x有+1但是它並未在這一個步驟馬上就顯示,它的+1會顯示在下個步驟裡可以看看以下這張圖,因為我在x++和++x中間又加了一個x,讓系統多列印一次x,所以多加入的那一個x也就會顯示已經+1過後的x
再來最後一個++x為什麼會顯示為6呢?
這部分應該不難理解了,因為前面的x已經被+了一次1,在++x時,又多加了一次1當然就會變成4+1+1等於6囉!
也就是說這裡的++x可以拆解為已經被+1過一次的x又再加1一次,因為這裡是++放前面,也就不用先印出未加1的x,直接顯示最終結果。
TIP!可以把x寫在前的x++記成先顯示x,++顯示在前的++x則因為先出現++符號所以直接進行計算。
2. 賦值運算子:從字面上來看就是讓某個東西被賦予一個數值,最基本的就是我們在宣告變數時會使用的"="符號,
雖然它是我們大眾所認定的等於符號,但在這裡它存在的意義應該是將左邊的值賦予右邊的東西。
除此了等於之外,還有其他可以搭配算數來使用的符號。
假設x=6,y=2
加:+= (ex: x+=y 代表的意思是 x = x + y,所以會印出8)
減:-= (ex: x-=y 代表的意思是 x = x - y,所以會印出4)
乘:*= (ex: x*=y 代表的意思是 x = x * y,所以會印出12)
除:/= (ex: x/=y 代表的意思是 x = x / y,所以會印出3)
餘數:%= (ex: x%=y 代表的意思是x = x % y,所以會印出0)