js基礎篇(四)(運算子以及流程控制語句)

2021-09-29 12:36:19 字數 2641 閱讀 3156

邏輯運算子

!- 非運算可以對乙個布林值進行取反,true變false false邊true

- 當對非布林值使用!時,會先將其轉換為布林值然後再取反

- 我們可以利用!來將其他的資料型別轉換為布林值

&&

- &&可以對符號兩側的值進行與運算

- 只有兩端的值都為true時,才會返回true。只要有乙個false就會返回false。

- 與是乙個短路的與,如果第乙個值是false,則不再檢查第二個值

- 對於非布林值,它會將其轉換為布林值然後做運算,並返回原值

- 規則:

1.如果第乙個值為false,則返回第乙個值

2.如果第乙個值為true,則返回第二個值

||- ||可以對符號兩側的值進行或運算

- 只有兩端都是false時,才會返回false。只要有乙個true,就會返回true。

- 或是乙個短路的或,如果第乙個值是true,則不再檢查第二個值

- 對於非布林值,它會將其轉換為布林值然後做運算,並返回原值

- 規則:

1.如果第乙個值為true,則返回第乙個值

2.如果第乙個值為false,則返回第二個值

= 

- 可以將符號右側的值賦值給左側變數

+=- a += 5 相當於 a = a+5

- var str = "hello"; str += "world";

-=- a -= 5 相當於 a = a-5

*=- a *= 5 相當於 a = a*5

/=- a /= 5 相當於 a = a/5

%= - a %= 5 相當於 a = a%5

關係運算子

- 關係運算子用來比較兩個值之間的大小關係的

>

>=

<

<=

- 關係運算子的規則和數學中一致,用來比較兩個值之間的關係,

如果關係成立則返回true,關係不成立則返回false。

- 如果比較的兩個值是非數值,會將其轉換為number然後再比較。

- 如果比較的兩個值都是字串,此時會比較字串的unicode編碼,而不會轉換為number。

相等運算子

== - 相等,判斷左右兩個值是否相等,如果相等返回true,如果不等返回false

- 相等會自動對兩個值進行型別轉換,如果對不同的型別進行比較,會將其轉換為相同的型別然後再比較,

轉換後相等它也會返回true

!= - 不等,判斷左右兩個值是否不等,如果不等則返回true,如果相等則返回false

- 不等也會做自動的型別轉換。

===- 全等,判斷左右兩個值是否全等,它和相等類似,只不過它不會進行自動的型別轉換,

如果兩個值的型別不同,則直接返回false

!==- 不全等,和不等類似,但是它不會進行自動的型別轉換,如果兩個值的型別不同,它會直接返回true

特殊的值:

- null和undefined

- 由於undefined衍生自null,所以null == undefined 會返回true。

但是 null === undefined 會返回false。

- nan

- nan不與任何值相等,報告它自身 nan == nan //false

- 判斷乙個值是否是nan

- 使用isnan()函式

三元運算子:

?: - 語法:條件表示式?語句1:語句2;

- 執行流程:

先對條件表示式求值判斷,

如果判斷結果為true,則執行語句1,並返回執行結果

如果判斷結果為false,則執行語句2,並返回執行結果

優先順序:

- 和數學中一樣,js中的運算子也是具有優先順序的,

比如 先乘除 後加減 先與 後或

- 具體的優先順序可以參考優先順序的**,在**中越靠上的優先順序越高,

優先順序越高的越優先計算,優先順序相同的,從左往右計算。

- 優先順序不需要記憶,如果越到拿不準的,使用()來改變優先順序。

條件判斷語句

- 條件判斷語句也稱為if語句

- 語法一:

if(條件表示式)

- 執行流程:

if語句執行時,會先對條件表示式進行求值判斷,

如果值為true,則執行if後的語句

如果值為false,則不執行

- 語法二:

if(條件表示式)else

- 執行流程:

if...else語句執行時,會對條件表示式進行求值判斷,

如果值為true,則執行if後的語句

如果值為false,則執行else後的語句

- 語法三:

if(條件表示式)else if(條件表示式)else if(條件表示式)else if(條件表示式)else

- 執行流程

- if...else if...else語句執行時,會自上至下依次對條件表示式進行求值判斷,

如果判斷結果為true,則執行當前if後的語句,執行完成後語句結束。

如果判斷結果為false,則繼續向下判斷,直到找到為true的為止。

如果所有的條件表示式都是false

運算子及流程控制

運算子 c語言提供一種操作的符號來計算 運算子表示式 由運算元和運算子組成的表示式 表示式結果 計算的結果 1 算術運算子 算數運算子表示式 算術結果 2 賦值運算子 左值 右值 左值必須有變數 1 溢位 大空間賦值給小空間 short in 2 不轉換型別 int float 只會整數間的賦值 f...

運算子和流程控制

python3中只有乙個input python2中的raw input與python3中的input一模一樣 python3中的input 要求輸入者必須輸入乙個明確的資料型別 輸入什麼型別就存成什麼型別 1.運算子 算術運算 int,float 數字型別 取整 取餘賦值運算子 age 18 ag...

運算子和流程控制

目錄算數運算子 取餘 自加1 自減1需要注意的是 var a 10 var b a 先賦值再自加 console.log b 10 console.log a 11 var c b 先自加再賦值 console.log b 11 console.log c 11比較運算子 全等 不全等1 1 fal...