運算符也叫操作符
通過運算符對一個或多個值進行運算,並獲取運算結果
比如:typeof就是運算符,可以將運算符結果以字符串形式返回
算術運算符
對非Number類型的只進行運算時,會將這些值轉化爲Number然後
再進行運算,任何值和NaN運算都是NaN
+運算符:
-可以對兩個值進行加法運算,並將結果返回
-如果對兩個字符串進行加法運算,則會做拼串並返回
-任何值和字符串做加法運算都會轉化爲字符串,然後再和字符
串做拼串操作
-運算符:可以對兩個值進行減法運算,並將結果返回
*運算符:可以對兩個值進行乘法運算,並將結果返回
/運算符:可以對兩個值進行除法運算,並將結果返回
%運算符:可以對兩個值進行取餘運算,並將結果返回
var a=123;//true
var result=typeof a;
result=true+1;
result=null+1;
result=NaN+1;
result=123+456+"789";
/*任何值-、*、/做運算時都會轉化爲Number
我們可以利用這一特點做隱式類型轉化-0 *1 /1將去轉化爲Number
原理和Number()函數一樣,但是使用起來簡單
*/
document.write(typeof a);
document.write(a);
console.log("result:"+result);
一元運算符,只需要一個操作數
+ 正號:不會對數字產生任何影響
- 負號:負號可以對數字運算進行取反
對於非Number類型的值
-它會先轉化爲Number,然後再運算
-可以對一個其他的數據類型使用+,將其轉化爲Number
var a=“123”;
a="18";
var b=true;
b= +b;
a=+a;
console.log(a);
自增++
-可以通過自增可以是變量在原先基礎上增加1
-自增分爲兩種:後++(a++)和前++(++a)
無論是a++,還是++a,都會立即在原變量的基礎上增加1
a++和++a的值不同:a++的值等於原變量的值,++a等於原變量的新值
自增--
-可以通過自減可以是變量在原先基礎上減1
-自減分爲兩種:後--(a--)和前--(--a)
無論是a--,還是--a,都會立即在原變量的基礎上增加1
a--和--a的值不同:a--的值等於原變量的值,--a等於原變量的新值
var a=1;
console.log(a++);
console.log(++a);
console.log(a--);
console.log(--a);
邏輯運算符
!非:對布爾值取反操作
-如果對非布爾值取反,會將其轉換爲布爾值再取反
&&與
-只有兩個條件都爲true時才返回true
||或
-只要兩個條件其中一個爲true就返回true
var result=true&&false;
result=result||true;
console.log(result);
//true && alert("hello");
false && alert("hello");
true||alert("hello");
false||alert("天才");