下面本篇文章給大家介紹一下JavaScript中的操作符與表達式,希望給大家有所幫助!
前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用
1.表達式
1.1原始表達式
3.14 //數字直接量 "hello world" //字符串直接量 /pattern/ //正則表達式直接量 true //返回一個布爾值: 真 false //返回一個布爾值: 假 null //返回一個值: 空 this //返回“當前”對象 i //返回變量i的值 sum //返回sum的值 undefined //undefined是全局變量,和null不同,它不是一個關鍵字
登錄后復制
1.2表達式
操作數以及操作符組合而成。
1 1 + 2 (1 + 2) * 3 (1 + 2 ) * 3 && !flag
登錄后復制
2.操作符
- 算術運算符(
+, -, *, /, %, **
): 普通的加、減、乘、除、取余運算,其中**
為次方運算符。
3 ** 2 // 結果為:9
登錄后復制
- 一元運算符(
++, --, +, -
): 一些只需要一個操作數的運算符,注意:++, --
放在變量左右側的差別,放在變量的左側是先自增(減),再取值,放在右側則相反。
let a = 2, y, z; y = ++a // 先執行a = a + 1, 得到 a = 3, 然后將a賦值給y,則y = 3 z = a++ // 接上面a = 3, 將a賦值給z,則z = 3,然后再執行 a = a + 1, 得到a = 4 //一元證號(+) +3 //3 +'3' //3 +true //1 +functioan(a){return a} //NaN
登錄后復制
- 賦值運算符(
=, +=, -=, *=, /=, %=
):將某個常量或變量或表達式的值賦值給另一個變量,注意:ES6新增的解構賦值。
//解構數組 let [a, b, c] = ['one', 'two', 'three'] // a = 'one', b = 'two', c = 'three' //解構對象 let { name, age } = { name: 'cc', age: 100 } // name = 'cc', age = 100
登錄后復制
- 相等運算符(
==, !=, ===, !==
):用于比較左右的操作數是否相等。可參考:JS比較運算符(“===”和“==”
)的匹配規則以及if()條件的判斷結果。 - 關系運算符(
>, <, >=, <=
): 用于比較操作符左右的操作數的大小。 - 位操作符(
&, |, ~, ^, <<, >>, >>>
): 將其操作數轉化為二進制后,進行與、或、非、異或等操作運算,最終返回JS中的一個數值。其中>>>
為無符號右移。 - 邏輯運算符(
&&, ||, !
): 主要通過與、或、非來判斷一個表達式的值是否為true。注意:與和或操作具有短路計算效果。
//短路計算 false && (anything) // 結果為false true || (anything) // 結果為anything //方法1: 設置x的缺省值 function test(x) { x = x || 100 } test(10) //x = 10 test() // x = 100 // 方法2: ES6的方式 function test(x = 100) { ... } test(10) //x = 10 test() // x = 100
登錄后復制
- 條件運算符(
? :
): JS中唯一一個有3個運算數的運算符,一般用于if語句的簡短形式來使用。
【