運算符也叫操作符,通過運算符可以對一個或多個值進行運算並獲取運算結果。

比如:typeof就是運算符,可以來獲得一個值的類型,它會將該值的類型以字符串的形式返回(number string boolean undefined object)

1、算術運算符

算術運算符用於表達式計算。

y=5,

+ 加法 x=y+2

- 減法 x=y-2

* 乘法 x=y*2

/ 除法 x=y/2

% 取模(求餘數) x=y%2

++ 自增

x=++y

x=y++ 6

– 自減

x=–y

x=y– 4

2、關係運算符

關係運算符在邏輯語句中使用,以測定變量或值是否相等。

x=5,

> 大於 x>8

< 小於 x<8

>= 大於或等於 x>=8

<= 小於或等於 x<=8

2.5.3、賦值運算符

賦值運算符用於給 JavaScript 變量賦值。

x=10 和 y=5,

=    x=y  x=5

+=  x+=y x=x+y 

-=   x-=y x=x-y

*=   x*=y x=x*y

/=   x/=y x=x/y

%=   x%=y x=x%y

4、邏輯運算符

邏輯運算符用於測定變量或值之間的邏輯。

給定 x=6 以及 y=3,

&&  and (x < 10 && y > 1) 為 true

||  or (x==5 || y==5) 為 false

!  not !(x==y) 為 true

關於邏輯運算符我們可以具體探討一下:

&& 與:&&可以對符號兩側的值進行與運算並返回結果,運算規則如下:

兩個值中只要有一個值為false,就返回false,只有兩個值都為true時,才會返回true

JS中的“與”屬於短路的與,如果第一個值為false,則不會檢查第二個值

非布爾值時:如果兩個都為true,則返回第二個值,如果兩個值中有false,則返回靠前的false的值

|| 或:||可以對符號兩側的值進行或運算並返回結果,運算規則如下:

兩個值中只要有一個true,就返回true,只有兩個值都為false,才會返回false

JS中的“或”屬於短路的或,如果第一個值為true,則不會檢查第二個值

非布爾值時:如果兩個都為false ,則返回第二個值,如果兩個值中有true,則返回靠前的true的值

! 非:!可以用來對一個值進行非運算,所謂非運算就是對一個布爾值進行取反操作,true變false,false變true,運算規則如下:

如果對一個值進行兩次取反,它不會變化

非布爾值時:先會將其轉換為布爾值,然後再取反,所以我們可以利用該特點,來將一個其它的數據類型轉換為布爾值,可以為一個任意數據類型取兩次反,來將其轉換為布爾值,原理和Boolean()函數一樣

5、比較運算符

比較運算符用來比較兩個值是否相等,如果相等會返回true,否則返回false。

使用 == 來做相等運算

當使用==來比較兩個值時,如果值的類型不同,則會自動進行類型轉換,將其轉換為相同的類型,然後在比較

使用 != 來做不相等運算

不相等用來判斷兩個值是否不相等,如果不相等返回true,否則返回false,不相等也會對變量進行自動的類型轉換,如果轉換後相等它也會返回false

使用 === 來做全等運算

用來判斷兩個值是否全等,它和相等類似,不同的是它不會做自動的類型轉換,如果兩個值的類型不同,直接返回false

使用 !== 來做不全等運算

用來判斷兩個值是否不全等,它和不等類似,不同的是它不會做自動的類型轉換,如果兩個值的類型不同,直接返回true

6、條件運算符

JavaScript 還包含了基於某些條件對變量進行賦值的條件運算符。

語法:variablename=(condition)?value1:value2;

舉例:result=(age<18)?"年齡太小":"年齡合適";

執行流程:如果condition為true,則執行語句1,並返回執行結果,如果為false,則執行語句2,並返回執行結果。

7、逗號運算符

使用逗號可以在一條語句中執行多次操作。

比如:var num1=1, num2=2, num3=3;

使用逗號運算符分隔的語句會從左到右順 序依次執行。