一元運算符:只需一個操作數(shù)
+正號:不會對數(shù)字產(chǎn)生影響
-負(fù)號:對數(shù)字進行符號取反
對非Number類型值嘲恍,會先轉(zhuǎn)為Number,再運算
+可用來將其他數(shù)據(jù)類型轉(zhuǎn)為Number雄驹,作用類似于Number()函數(shù)
自增:使變量在自身的基礎(chǔ)上加一
? ? ? ? ? 后++(a++):值等于原變量的值【先賦值后自增】
? ? ? ? ? 前++(++a):值等于新的值【先自增后賦值】
自減:使變量在自身基礎(chǔ)上減一
? ? ? ? ? 后--(a--):值等于原變量的值【先賦值后自減】
? ? ? ? ? 前--(--a):值等于新的值【先自減后賦值】
邏輯運算符:佃牛!非;&&與医舆;||或吁脱。
? ? ? ?? IO选:取反操作,兩次取反則值不變
對非布爾值操作時兼贡,會先轉(zhuǎn)為布爾值攻冷,然后再取反
可對任意數(shù)據(jù)類型取兩次反,將其轉(zhuǎn)化為布爾類型遍希,相當(dāng)于Boolean()函數(shù)
? ? ? ?? &&:對符號兩側(cè)值進行“與”運算并返回結(jié)果
兩值中只要有一個值為false就返回false【遇false則false】
兩值都為true才返回true
如果第一個值為false等曼,則不會看第二個值
? ? ? ?? ||:對符號兩側(cè)值進行“或”運算并返回結(jié)果
兩值中只要有一個值為true就返回true【遇true則true】
兩值都為false才返回false
如果第一個值為true,則不會看第二個值
? ? ? ? ? &&? ||對于非布爾值進行與或運算時凿蒜,會先將其轉(zhuǎn)換為布爾值再運算禁谦,并返回原值
&&如第一個值為true,則必然返回第二個值废封;第一個值為false則直接返回第一個值
||如第一個值為true州泊,則直接返回第一個值;第一個值為false則返回第二個值
(從某種意義上來說&&在找false漂洋,||在找true)
賦值運算符:=(右側(cè)賦值給左側(cè))遥皂;+=;-=刽漂;*=演训;/=;%=
關(guān)系運算符:比較兩個值之間的大小贝咙,關(guān)系成立返回true样悟、不成立返回false
>;>=庭猩;<窟她;<=。
非數(shù)值會將其轉(zhuǎn)為數(shù)字再比較
若兩側(cè)都為字符串則不會轉(zhuǎn)為數(shù)字蔼水,而會分別比較字符串中字符的Unicode編碼
NaN與任何值比較震糖,結(jié)果都是false
Unicode編碼:
在js中用編碼格式為:\u四位編碼
在網(wǎng)頁中編碼格式為:&#編碼
相等運算符:用來比較兩個值是否相等,相等返回true徙缴,否則返回false(=為賦值试伙,==為相等)
相等運算:用==比較嘁信;若兩值類型不同會自動進行類型轉(zhuǎn)換
不相等運算:用于样!=比較;也會自動進行類型轉(zhuǎn)換
全等運算:用===判斷潘靖;不會做自動的類型轉(zhuǎn)換穿剖,若兩值類型不同則直接返回false
不全等運算:用!==判斷卦溢;不會做自動的類型轉(zhuǎn)換糊余,若兩值類型不同則直接返回true
條件運算符(也叫三元運算符):
語法:條件表達式秀又?語句1:語句2;
執(zhí)行的流程:首先對表達式進行求值,若該值為true贬芥,則執(zhí)行語句1吐辙;若false,則執(zhí)行語句2
若表達式求值結(jié)果為非布爾值蘸劈,會將其轉(zhuǎn)換為布爾值然后再運算
{var max = a>b ? a : b;
max = max>c ? max : c;
console.log("max=" + max);}----->求三個數(shù)中的最大值
運算符的優(yōu)先級:
1:.昏苏、[]、 new
2:()
3:++威沫、 --
4:!贤惯、~、+(單目)棒掠、-(單目)孵构、typeof、void烟很、delete
5:%颈墅、*、/
6:+(雙目)溯职、-(雙目)
7:<< 精盅、 >>、 >>>
8:<谜酒、<=叹俏、>、>=
9:==僻族、!==粘驰、===
10:&
11:^
12:|
13:&&
14:||
15:?:
16:=、+=述么、-=蝌数、*=、/=度秘、%=顶伞、<<=、>>=剑梳、>>>=唆貌、&=、^=垢乙、|=
17:,
“锨咙,”可以分割多個語句,一般在聲明多個變量時使用