2019-06-06(前端第十節(jié)知識點(js)運算符)

運算符:

運算符也叫操作符

通過運算符可以對一個或多個值進行運算,并獲取運算結(jié)果

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

"number" "string" "boolean" "undefined" "object"

算數(shù)運算符

當對非Number類型的值進行運算時,會將這些值轉(zhuǎn)換為Number然后在運算

任何值和NaN做運算都得NaN

+

+可以對兩個值進行加法運算,并將結(jié)果返回

如果對兩個字符串進行加法運算,則會做拼串,會將兩個字符串拼接為一個字符串,并返回

任何的值和字符串做加法運算,都會先轉(zhuǎn)換為字符串,然后再和字符串做拼串的操作

-

- 可以對兩個值進行減法運算,并將結(jié)果返回

*

* 可以對兩個值進行乘法運算

/

/ 可以對兩個值進行除法運算

%

% 取模運算(取余數(shù))

任何值和字符串相加都會轉(zhuǎn)換為字符串,并做拼串操作

我們可以利用這一特點,來將一個任意的數(shù)據(jù)類型轉(zhuǎn)換為String

我們只需要為任意的數(shù)據(jù)類型 + 一個 "" 即可將其轉(zhuǎn)換為String

這是一種隱式的類型轉(zhuǎn)換,由瀏覽器自動完成,實際上它也是調(diào)用String()函數(shù)

任何值做- * /運算時都會自動轉(zhuǎn)換為Number

我們可以利用這一特點做隱式的類型轉(zhuǎn)換

可以通過為一個值 -0 *1 /1來將其轉(zhuǎn)換為Number

原理和Number()函數(shù)一樣,使用起來更加簡單


一元運算符:

一元運算符,只需要一個操作數(shù)

+ 正號

- 正號不會對數(shù)字產(chǎn)生任何影響

- 負號

- 負號可以對數(shù)字進行符號的取反

- 對于非Number類型的值,它會將先轉(zhuǎn)換為Number,然后再運算

- 可以對一個其他的數(shù)據(jù)類型使用+,來將其轉(zhuǎn)換為number,它的原理和Number()函數(shù)一樣


自增 ++

- 通過自增可以使變量在自身的基礎(chǔ)上增加1

- 對于一個變量自增以后,原變量的值會立即自增1

- 自增分成兩種:后++(a++) 和 前++(++a)

無論是a++還是++a,都會立即使原變量的值自增1

不同的是a++和++a的值不同

a++的值等于原變量的值(自增前的值)

++a的值等于新值 (自增后的值)

自減 --

- 通過自減可以使變量在自身的基礎(chǔ)上減1

- 自減分成兩種:后--(a--) 和 前--(--a)

無論是a--還是--a都會立即使原變量的值自減1

不同的是a-- 和 --a的值不同

a-- 是變量的原值 (自減前的值)

--a 是變量的新值 (自減以后的值)


邏輯運算符:

JS中為我們提供了三種邏輯運算符

! 非

- !可以用來對一個值進行非運算

- 所謂非運算就是值對一個布爾值進行取反操作,

true變false,false變true

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

- 如果對非布爾值進行元素,則會將其轉(zhuǎn)換為布爾值,然后再取反

所以我們可以利用該特點,來將一個其他的數(shù)據(jù)類型轉(zhuǎn)換為布爾值

可以為一個任意數(shù)據(jù)類型取兩次反,來將其轉(zhuǎn)換為布爾值,原理和Boolean()函數(shù)一樣

&& 與

- &&可以對符號兩側(cè)的值進行與運算并返回結(jié)果

- 運算規(guī)則

- 兩個值中只要有一個值為false就返回false,

只有兩個值都為true時,才會返回true

- JS中的“與”屬于短路的與,

如果第一個值為false,則不會看第二個值

|| 或

- ||可以對符號兩側(cè)的值進行或運算并返回結(jié)果

- 運算規(guī)則:

- 兩個值中只要有一個true,就返回true

如果兩個值都為false,才返回false

- JS中的“或”屬于短路的或

如果第一個值為true,則不會檢查第二個值


與或運算:

&& || 非布爾值的情況

- 對于非布爾值進行與或運算時,會先將其轉(zhuǎn)換為布爾值,然后再運算,并且返回原值

- 與運算:

- 如果第一個值為true,則必然返回第二個值

- 如果第一個值為false,則直接返回第一個值

- 或運算

- 如果第一個值為true,則直接返回第一個值

- 如果第一個值為false,則返回第二個值


賦值運算符:

可以將符號右側(cè)的值賦值給符號左側(cè)的變量


關(guān)系運算符:

通過關(guān)系運算符可以比較兩個值之間的大小關(guān)系,

如果關(guān)系成立它會返回true,如果關(guān)系不成立則返回false

> 大于號

- 判斷符號左側(cè)的值是否大于右側(cè)的值

- 如果關(guān)系成立,返回true,如果關(guān)系不成立則返回false

>= 大于等于

- 判斷符號左側(cè)的值是否大于或等于右側(cè)的值

< 小于號

<= 小于等于

非數(shù)值的情況

- 對于非數(shù)值進行比較時,會將其轉(zhuǎn)換為數(shù)字然后再比較

- 如果符號兩側(cè)的值都是字符串時,不會將其轉(zhuǎn)換為數(shù)字進行比較,而會分別比較字符串中字符的Unicode編碼

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容