JavaScript 運(yùn)算符

2021-08-27 13:45 更新

運(yùn)算符

什么是運(yùn)算符?

用表達(dá)式 4 + 5 能很快得到 4 和 5 這兩個(gè)數(shù)的和為 9。這里 4 和 5 被稱為運(yùn)算數(shù),+ 叫做運(yùn)算符。JaScript 語(yǔ)言支持以下類型的運(yùn)算符:

  • 算術(shù)運(yùn)算符
  • 比較運(yùn)算符
  • 邏輯(或關(guān)系)運(yùn)算符
  • 賦值運(yùn)算符
  • 條件(或三元)運(yùn)算符

讓我們依次看一下這些運(yùn)算符。

算數(shù)運(yùn)算符

JavaScript語(yǔ)言支持以下算術(shù)運(yùn)算符:

給定 A=10,B=20,下面的表格解釋了這些算術(shù)運(yùn)算符:

運(yùn)算符 描述 例子
+兩個(gè)運(yùn)算數(shù)相加A + B = 30
-第一個(gè)運(yùn)算數(shù)減去第二個(gè)運(yùn)算數(shù)A - B = -10
*運(yùn)算數(shù)相乘A * B = 200
/分子除以分母B / A = 2
%模數(shù)運(yùn)算符,整除后的余數(shù)B % A = 0
++增量運(yùn)算符,整數(shù)值逐次加1A++ = 11
--減量運(yùn)算符,整數(shù)值逐次減1A-- = 9

注意 : + 運(yùn)算符不僅可以用于數(shù)字相加,還可以用于把文本值或字符串變量加起來(lái)(連接起來(lái))。例如,"a" + 10 = “a10”。

比較運(yùn)算符  

JavaScript語(yǔ)言支持以下比較運(yùn)算符:

給定 A=10,B=20,下面的表格解釋了這些比較運(yùn)算符:

運(yùn)算符描述例子
== 檢查兩個(gè)運(yùn)算數(shù)的值是否相等,如果是,則結(jié)果為true A == B 為false
!= 檢查兩個(gè)運(yùn)算數(shù)的值是否相等,如果不相等,則結(jié)果為trueA != B 為true
> 檢查左邊運(yùn)算數(shù)是否大于右邊運(yùn)算數(shù),如果是,則結(jié)果為trueA > B 為false
<檢查左邊運(yùn)算數(shù)是否小于右邊運(yùn)算數(shù),如果是,則結(jié)果為trueA < B 為true
>= 檢查左邊運(yùn)算數(shù)是否大于或者等于右邊運(yùn)算數(shù),如果是,則結(jié)果為true A >= B 為false
<=檢查左邊運(yùn)算數(shù)是否小于或者等于運(yùn)算數(shù),如果是,則結(jié)果為true A <= B 為true

邏輯運(yùn)算符

JavaScript語(yǔ)言支持以下邏輯運(yùn)算符:

給定 A=10,B=20,下面的表格解釋了這些邏輯運(yùn)算符:

運(yùn)算符 描述 例子
&&稱為邏輯與運(yùn)算符。如果兩個(gè)運(yùn)算數(shù)都非零,則結(jié)果為true。A && B 為true
||稱為邏輯或運(yùn)算符。如果兩個(gè)運(yùn)算數(shù)中任何一個(gè)非零,則結(jié)果為true。A || B 為 true
!稱為邏輯非運(yùn)算符。用于改變運(yùn)算數(shù)的邏輯狀態(tài)。如果邏輯狀態(tài)為true,則通過(guò)邏輯非運(yùn)算符可以使邏輯狀態(tài)變?yōu)閒alse!(A && B) 為false

按位運(yùn)算符

JavaScript語(yǔ)言支持以下邏輯運(yùn)算符:

給定 A=2,B=3,下面的表格解釋了這些邏輯運(yùn)算符

運(yùn)算符描述 例子
&稱為按位與運(yùn)算符。它對(duì)整型參數(shù)的每一個(gè)二進(jìn)制位進(jìn)行布爾與操作。A & B = 2 .
|稱為按位或運(yùn)算符。它對(duì)整型參數(shù)的每一個(gè)二進(jìn)制位進(jìn)行布爾或操作。A | B = 3.
^ 稱為按位異或運(yùn)算符。它對(duì)整型參數(shù)的每一個(gè)二進(jìn)制位進(jìn)行布爾異或操作。異或運(yùn)算是指第一個(gè)參數(shù)或者第二個(gè)參數(shù)為true,并且不包括兩個(gè)參數(shù)都為true的情況,則結(jié)果為true。(A ^ B) = 1.
~ 稱為按位非運(yùn)算符。它是一個(gè)單運(yùn)算符,對(duì)運(yùn)算數(shù)的所有二進(jìn)制位進(jìn)行取反操作。~B = -4 .
<<稱為按位左移運(yùn)算符。它把第一個(gè)運(yùn)算數(shù)的所有二進(jìn)制位向左移動(dòng)第二個(gè)運(yùn)算數(shù)指定的位數(shù),而新的二進(jìn)制位補(bǔ)0。將一個(gè)數(shù)向左移動(dòng)一個(gè)二進(jìn)制位相當(dāng)于將該數(shù)乘以2,向左移動(dòng)兩個(gè)二進(jìn)制位相當(dāng)于將該數(shù)乘以4,以此類推。 A << 1 = 4.
>>稱為按位右移運(yùn)算符。它把第一個(gè)運(yùn)算數(shù)的所有二進(jìn)制位向右移動(dòng)第二個(gè)運(yùn)算數(shù)指定的位數(shù)。為了保持運(yùn)算結(jié)果的符號(hào)不變,左邊二進(jìn)制位補(bǔ)0或1取決于原參數(shù)的符號(hào)位。如果第一個(gè)運(yùn)算數(shù)是正的,運(yùn)算結(jié)果最高位補(bǔ)0;如果第一個(gè)運(yùn)算數(shù)是負(fù)的,運(yùn)算結(jié)果最高位補(bǔ)1。將一個(gè)數(shù)向右移動(dòng)一位相當(dāng)于將該數(shù)乘以2,向右移動(dòng)兩位相當(dāng)于將該數(shù)乘以4,以此類推。 A >> 1 = 1.
>>>稱為0補(bǔ)最高位無(wú)符號(hào)右移運(yùn)算符。這個(gè)運(yùn)算符與>>運(yùn)算符相像,除了位移后左邊總是補(bǔ)0.A >>> = 1.

賦值運(yùn)算符

JavaScript語(yǔ)言支持以下賦值運(yùn)算符:

運(yùn)算符 描述例子
=簡(jiǎn)單賦值運(yùn)算符,將右邊運(yùn)算數(shù)的值賦給左邊運(yùn)算數(shù) C = A + B 將A+B的值賦給C
+=加等賦值運(yùn)算符,將右邊運(yùn)算符與左邊運(yùn)算符相加并將運(yùn)算結(jié)果賦給左邊運(yùn)算數(shù)C += A 相當(dāng)于 C = C + A
-=減等賦值運(yùn)算符,將左邊運(yùn)算數(shù)減去右邊運(yùn)算數(shù)并將運(yùn)算結(jié)果賦給左邊運(yùn)算數(shù)C -= A 相當(dāng)于C = C - A
*=乘等賦值運(yùn)算符,將右邊運(yùn)算數(shù)乘以左邊運(yùn)算數(shù)并將運(yùn)算結(jié)果賦給左邊運(yùn)算數(shù)C *= A 相當(dāng)于C = C * A
/= 除等賦值運(yùn)算符, 將左邊運(yùn)算數(shù)除以右邊運(yùn)算數(shù)并將運(yùn)算結(jié)果賦值給左邊運(yùn)算數(shù)C /= A 相當(dāng)于 C = C / A
%=模等賦值運(yùn)算符,用兩個(gè)運(yùn)算數(shù)做取模運(yùn)算并將運(yùn)算結(jié)果賦值給左邊運(yùn)算數(shù)C %= A 相當(dāng)于 C = C % A

注意:同樣的邏輯可以應(yīng)用到位運(yùn)算符,因此就有<<= , >>= , >>>= , &= , |= 以及 ^= 。

其他運(yùn)算符

條件運(yùn)算符(?:)

有一種運(yùn)算符叫條件運(yùn)算符。首先判斷一個(gè)表達(dá)式是真或假,然后根據(jù)判斷結(jié)果執(zhí)行兩個(gè)給定指令中的一個(gè)。條件運(yùn)算符語(yǔ)法如下:

運(yùn)算符 描述例子
? :條件表達(dá)式如果條件為真 ? X值 : Y值

typeof 運(yùn)算符

typeof是一個(gè)置于單個(gè)參數(shù)之前的一元運(yùn)算符,這個(gè)參數(shù)可以是任何類型的。它的值是一個(gè)表示運(yùn)算數(shù)的類型的字符串。

typeof運(yùn)算符可以判斷“數(shù)值”,“字符串”,“布爾”類型,看運(yùn)算數(shù)是一個(gè)數(shù)字,字符串還是布爾值,并且根據(jù)判斷結(jié)果返回true或者false。

下表是typeof運(yùn)算符的返回值:

類型Typeof返回字符串
數(shù)值"number"
字符串 "string"
布爾"boolean"
對(duì)象"object"
函數(shù)"function"
未定義"undefined"
"object"
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)