【相關推薦:、】
運運算元(operator)也被稱為操作符,是用於實現賦值、比較和執行算數運算等功能的符號。
JavaScript中常用的運運算元有:
概念:算術運算使用的符號,用於執行倆個變數或值的算術運算。
運運算元 | 描述 | 範例 |
---|---|---|
+ | 加 | 10+20=30 |
- | 減 | 20-10=10 |
* | 乘 | 10*20=200 |
/ | 除 | 10/20=0.5 |
% | 取餘數(取模) | 返回除法的餘數9%2=1 |
console.log(1 + 1); //2 console.log(1 - 1); //0 console.log(1 * 1); //1 console.log(1 / 1); //1 console.log(4 % 2); //0
浮點數在算數運算裡面會有誤差(避免直接參與運算):
console.log(0.1 + 0.2); //0.30000000000000004
不能直接判斷倆個浮點數是否相等。
var num = 0.1 + 0.2; console.log(num == 0.3); //false
表示式和返回值:
由數位、運運算元、變數等組成的式子我們稱為表示式。
表示式最終都會有一個結果返回給我們,我們稱為返回值。
如果需要反覆給數位變數新增或減去1,可以使用遞增(++
)和遞減(--
)運運算元來完成。
繁瑣寫法:
var num = 1; num = num + 1; num = num + 1; console.log(num); //3
++
寫在變數的前面
++num
前置遞增就是自加1,類似於 num=num+1
var age = 10; ++age; console.log(age);//11 類似於age = age + 1
使用口訣:先自加,後返回值
console.log(age); var a = 10; console.log(++a + 10); //(10+1)+10=21
++
寫在變數的後面
num++
後置遞增,就是自加1,類似於 num=num+1
var age = 10; age++; console.log(age);//11 類似於age = age + 1
使用口訣:先返回原值,後自加
var a = 10; console.log(a++ + 10); //10+10=20 console.log(a); //11
num++;
練習:
var e = 10; var f = e++ + ++e; //1.e++=10 e=11 2.++e=12 f=10+12 console.log(f); //22
概念:比較運運算元(關係運算子)是倆個資料進行比較時所使用的運運算元,比較運算後,會返回一個布林值(true/false)作為比較運算的結果。
運運算元名稱 | 說明 | 案例 | 結果 |
---|---|---|---|
< | 小於號 | 1>2 | true |
> | 大於號 | 1>2 | false |
>= | 大於等於號(大於或等於) | 2>=2 | true |
<= | 小於等於號(小於或等於) | 3<=2 | false |
== | 判等號(會轉型) | 17==17 | true |
!= | 不等號 | 17!=17 | false |
=== !== | 全等,要求值和資料型別都一致 | 17==='17' | false |
console.log(2 <= 5); //true console.log('嶽澤以' = '個人部落格'); //false console.log(17 == '17'); //true 預設轉換資料型別,字串型轉換為數位型 console.log(17 = '17'); //false 資料型別不同,要求值和資料型別一致
符號 | 作用 | 用法 |
---|---|---|
= | 賦值 | 把右邊給左邊 |
== | 判斷 | 判斷兩邊值是否相等(存在隱式轉換) |
=== | 全等 | 判斷兩邊的值和資料型別是否完全相同 |
概念:邏輯運運算元是用來進行布林值運算的運運算元,其返回值也是布林值。後面開發中經常用於多個條件的判斷。
邏輯運運算元 | 說明 | 案例 |
---|---|---|
&& | "邏輯與",簡稱「與」and | ture && false |
丨丨 | "邏輯或",簡稱「或」or | ture 丨丨 false |
! | "邏輯非",簡稱「非」not | ! true |
符號:&&
相對於and
兩側都為 true
結果才是 true
,只要有一側為 false
,結果就為 false
console.log(3 > 5 && 3 > 2); //false console.log(3 < 5 && 3 < 7); //true
符號:||
相當於or
倆側都為 false
,結果才是 false
,只要有一側為 true
,結果就是 true
console.log(3 > 5 && 3 > 2); //false console.log(3 < 5 && 3 < 7); //true
符號:!
相對於not
邏輯非也叫作取反符,用來取一個布林值相反的值。
console.log(!true); //false console.log(!false); //true
短路運算的原理:當有多個表示式(值)時,左邊的表達值可以確定結果時,就不再繼續運算右邊的表示式的值。
邏輯與:
表示式1 && 表示式2
console.log(123 && 456); //返回456,除了0以外的所有數位都為真。 console.log(123 && 456 && 789); //返回789,依次後推 console.log(0 && 456); //0
邏輯或:
表示式1 || 表示式2
console.log(123 || 456); //123 console.log(123 || 456 || 123 + 456); //123 console.log(0 || 456 || 123 + 456); //456
注意:邏輯中斷會造成短路操作,即不執行後面的程式碼,影響程式設計師的執行結果。
var num = 0; console.log(123 || num++); //邏輯中斷造成num++未執行 console.log(num); //0
概念:用來把資料賦值給變數的運運算元
賦值運運算元 | 說明 | 案例 |
---|---|---|
= | 直接賦值 | var name='嶽澤以'; |
+=、-= | 加、減一個數後再賦值 | var age=10; age+=5; //15 |
*=、/=、%= | 乘、除、取餘後再賦值 | var age=10; age*=5; //10 |
var num = 5; num += 10; console.log(num); //5+10=15 num *= 3; console.log(num); //15*3=45
優先順序 | 運運算元 | 順序 |
---|---|---|
1 | 小括號 | () |
2 | 一元運運算元 | ++ -- ! |
3 | 算術運運算元 | 先 * / 後 + - |
4 | 關係運算子 | > >= < <= |
5 | 相等運運算元 | == != === !== |
6 | 邏輯運運算元 | 先 && 後 丨丨 |
7 | 賦值運運算元 | = |
8 | 逗號運運算元 | , |
console.log(4 >= 6 || '我' != '你' && !(12 * 2 == 144) && true); //true /* 邏輯運運算元分四段 1.4 >= 6 得false 2.'我' != '你'得true 3.!(12 * 2 == 144)得ture 4.true 然後判斷邏輯與:2與3得true 3和4得true 再判斷邏輯或得:true */
【相關推薦:、】
以上就是一起聊聊JavaScript運運算元的詳細內容,更多請關注TW511.COM其它相關文章!