JS中的運算子 JS中的分支結構

2021-08-07 05:28:46 字數 2566 閱讀 8089

一、js中的運算子

1、算術運算(單目運算子)

+ 加、- 減、* 乘、/ 除、% 取餘、++ 自增、-- 自減

>>> +:

有兩種作用,連線字串/加法運算。當+兩邊全為數字時,進行加法運算;

當+兩邊有任意一邊為字串時,起連線字串的作用,連線之後的結果為字串

除+外,其餘符號運算時,會先嘗試將左右變數用number函式轉為數字 

>>>/:

結果會保留小數點

>>> ++:

自增運算子,將變數在原有基礎上+1;

--:

自減運算子,將變數在原有基礎上-1

【a++和++a的異同】

① 相同點:無論a++還是++a,運算完後,a的值均會+1;

② 不同點:a++,先用a的值去運算,再把a+1;

++a,先把a+1,再用a+1以後的值去運算

eg:var a=3,b,c;

b = a++ +2;//先用a運算,b=3+2,再把a+1,a=4

c = ++a +2;//先把a+1,a=5 再用a+1以後的值去運算,c=5+2

2、賦值運算

= 賦值、 +=  -=  *=  /=  %=

+=:a+=b;相當於a=a+b;但是,前者的運算效率要比後者快,所以推薦使用+=寫法

3、關係運算

== 等於、===嚴格等於(全等)、!= 不等、!== 不全等、>、<、>=、<=

>>> 關係運算子,運算之後的結果,只能是boolean型別;

>>> 判斷乙個數字是否處於某個期間,必須用&&鏈結;

10>a && a>0 √    10>a>0 ×

>>> ===:

嚴格等於;要求不但要型別相同,值也必須相同;型別不同,結果直接為

false;型別相同,再進行下一步判斷 ==

:等於。型別相同,與===效果一樣;型別不同時,會先嘗試用number函式

將兩邊轉為數字再進行判斷

但是,有個別特例,如:null==false ×   null==undefined  √

nan==nan  ×

4、條件運算子(多目運算)

a>b?true:false

有兩個重要符號:?和:

當?前面部分,執行結果為true時,執行:前面的**;

當?前面部分,執行結果為false時,執行:後面的**;

冒號兩邊可以為數值,則整個式子可用於賦值。var a=1>2?1:2;

冒號兩邊可以為**塊,將直接執行**。var a=1>2?alert(1):alert(2);

多目運算子可以多層巢狀。  var a=1>2?alert(1):(1<2?4:5);

5、位運算子、 邏輯運算子

&、|、~     && 與、|| 或、! 非

&& 兩邊都成立,結果為true;

|| 兩邊有任意一邊成立,結果為true

6、運算子的優先順序

()                    小括號最高

!  ++  --          單目運算子

*  /   %

+  -

>  <   >=  <=

== !=

&&                 與或同時存在時,&&比||高 ||

=  +=  -=  *=  /=  最低的是各種賦值

eg:

水仙花數

二、js中的分支結構

【if-else結構】

1、結構的寫法:

if

(判斷條件)

}else

}

2、注意事項:

① else{}語句塊,可以根據情況進行省略

② if和else後面的{}可以省略,但是省略{}後,if和else後面只能跟一條語句。

(所以,並不建議省略{})

3、if的()中的判斷條件支援的情況:

① boolean:true為真,false為假;

② string:   空字串為假,所有非空字串為真;

③ number:   0為假,一切非0數字為真;

④ null/undefined/nan:   全為假;

⑤ object:   全為真

【多重if、階梯if結構】

1、結構寫法:

if

(條件一)else

if(條件二)else

2、多重if結構中,各個判斷條件是互斥的,執行選擇其中一條路執行。遇到正確選項,

並執行完以後,直接跳出結構,不再判斷後續分支

【巢狀if結構】

1、結構寫法:

if

(條件一)else

}else

2、在巢狀if結構中,如果省略,則else結構永遠屬於離它最近的乙個if結構。

3、巢狀結構可以多層巢狀,但是一般不推薦超過3層;能用多重if結構的一般不推薦使用

巢狀if。

Js中的 運算子

jscript 具有全範圍的運算子,包括算術 邏輯 位 賦值以及其他某些運算子。計算邏輯 位運算賦值 雜項描述 符號描述 符號描述 符號描述 符號描述 符號負值 邏輯非 按位取反 賦值 刪除delete 遞增 小於 按位左移 運算賦值 op typeof 運算子 typeof 遞減 大於 按位右移 ...

js中的運算子

js中的運算子包括算數運算子,賦值運算子,關係運輸符,邏輯運算子和邏輯運算子幾大類。一,算數運算子 算數運算子主要包括 取餘 對兩個值進行相加運算,並將結果返回。如 var a 1,b 2 console.log a b 輸出結果為 3。任何值與字串進行 運算時,會拼串。如 console.log ...

Js中的 運算子

jscript 具有全範圍的運算子,包括算術 邏輯 位 賦值以及其他某些運算子。計算邏輯 位運算賦值 雜項 描述 符號描述 符號描述 符號描述 符號描述 符號 負值 邏輯非 按位取反 賦值 刪除delete 遞增 小於 按位左移 運算賦值 op typeof 運算子 typeof 遞減 大於 按位右...