運算符
運算符也被稱爲操作符,是用於實現賦值、比較和執行算數運算等功能的符號
- 算數運算符
注意點:1)% 取餘(取模)
2)浮點數值的最高精度是17位小數,但在進行算術計算時其精度遠遠不如整數。
<script>
//1.% 取餘 取模運算
console.log(5 % 3);
//2. 浮點數 算數運算裏面會有問題
console.log(0.1 + 0.2);//0.30000000000000004
console.log(0.07 * 100);//7.000000000000001
//3.我們不能拿着浮點數進行比較 是否相等
var num = 0.1 + 0.2;
console.log(num == 0.3);//false
</script>
- 表達式和返回值
表達式:是由數字、運算符、變量等以能求得數值的有意義排列方法所得的組合。(簡單理解:由數字、運算符、變量組成的式子)
返回值:表達式有一個返回的值 - 遞增和遞減運算符
概述:如果需要反覆給數字變量添加或減去1,可以使用遞增(++)和遞減(- -)運算符來完成
(++)和(- -)可以放在變量的前面,也可以放在變量的後面,放在變量前面稱爲前置遞增(遞減)運算符,放在後面稱爲後置遞增(遞減)運算符。
注意點:必須要和變量配合使用
<script>
//1.想要一個變量加一
var num = 1;
num = num + 1;//++num
console.log(num);//2
//2.前置遞增運算符 ++ 寫在前面
var age = 10;
++age;
console.log(age);
//3.先加1 後返回值
var p =10;
console.log(++p + 10);//21
//4.前置自增和後置自增單獨使用 效果是一樣的 後置自增: 先返回原值 後自加1
var a = 10;
//a++;
console.log(a++ + 10);//20
console.log(a);//11
</script>
-
比較運算符
概念:比較運算符(關係運算符)是兩個數據進行比較時所使用的運算符,比較運算後會返回一個布爾值(true/false)作爲比較結果返回。
注意點: 程序中等於爲 (== ), 默認轉換數據類型,會把字符串類型轉換成數字型。全等需要數據值相等,數據類型相等。 -
邏輯運算符
概念:邏輯運算符是用來進行布爾值運算的運算符,其返回值也是布爾值,後面開發中經常用於多個條件的判斷。
<script>
//1.邏輯與 && 兩側都爲true 結果纔是true 只要有一側是false 結果爲false
console.log(3 > 5 && 3 > 2);
// console.log(3 < 5 && 3 > 2);
//2.邏輯或 || 兩側都是false 結果是假 只要有一側是true 結果都爲真
console.log(3 > 5 || 3 > 2);//true
console.log(3 > 5 || 3 < 2);//false
//3.邏輯非 !
console.log(!true);
</script>
注意點: 短路運算(邏輯運算)
短路運算原理: 當有多個表達式(值)時,左邊的表達式值可以確定結果時,就不再繼續運算右邊的表達式的值
1).邏輯與(&&)
語法:表達式1 && 表達式2
如果第一個表達式的值爲真,則返回表達式2,如果第一個表達式的值爲假,則返回表達式1;
<script>
console.log(123 && 456); //456
console.log(0 && 456); //0
console.log('' && 1 + 2 && 456 * 56789);//''
//如果有 0 '' null undefined NaN
</script>
2).邏輯或( || )
語法:表達式1 || 表達式2
如果第一個表達式的值爲真,則返回表達式1,如果第一個表達式的值爲假,則返回表達式2;
<script>
//邏輯中斷很重要,會影響程序的結果
var num = 0;
console.log(123 || num++);
console.log(num);//0
</script>
- 賦值運算符
<script>
var num = 10;
//num = num + 1;
//num = num + 2;//num += 2;
num += 2;
console.log(num);
</script>
- 運算符優先級