JavaScript中的运算符有算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符、关系运算符、三元运算符等。每种运算符都有其自身的优先级,运算符的使用也有一定的规则。
1. 算术运算符
算术运算符包括加(+)、减(-)、乘(*)、除(/)、取余(%)、自增(++)、自减(--)等。它们的优先级从上到下依次降低,乘除取余的优先级最高,加减的优先级最低。使用方法:
// 例1 var a = 3; var b = 5; var c = a + b; console.log(c); // 8 // 例2 var a = 3; var b = 5; var c = a * b; console.log(c); // 15
2. 比较运算符
比较运算符包括大于(>)、小于(<)、等于(==)、不等于(!=)、大于等于(>=)、小于等于(<=)等。它们的优先级从上到下依次降低。使用方法:
// 例1 var a = 3; var b = 5; if (a > b) { console.log('a大于b'); } else { console.log('a小于等于b'); } // 例2 var a = 3; var b = 3; if (a == b) { console.log('a等于b'); } else { console.log('a不等于b'); }
3. 逻辑运算符
逻辑运算符包括与(&&)、或(||)、非(!)等。它们的优先级从上到下依次降低,非的优先级最高,与或的优先级最低。使用方法:
// 例1 var a = true; var b = false; if (a && b) { console.log('a和b都为true'); } else { console.log('a或b不为true'); } // 例2 var a = true; var b = false; if (a || b) { console.log('a或b为true'); } else { console.log('a和b都不为true'); }
4. 赋值运算符
赋值运算符包括简单赋值(=)、加法赋值(+=)、减法赋值(-=)、乘法赋值(*=)、除法赋值(/=)、取余赋值(%=)等。它们的优先级从上到下依次降低,简单赋值的优先级最高,取余赋值的优先级最低。使用方法:
// 例1 var a = 3; a = a + 5; console.log(a); // 8 // 例2 var a = 3; a += 5; console.log(a); // 8
5. 位运算符
位运算符包括与(&)、或(|)、异或(^)、左移(<<)、右移(>>)、无符号右移(>>>)等。它们的优先级从上到下依次降低,与或异或的优先级最高,左移右移无符号右移的优先级最低。使用方法:
// 例1 var a = 3; var b = 5; var c = a & b; console.log(c); // 1 // 例2 var a = 3; var b = 5; var c = a << b; console.log(c); // 48
6. 关系运算符
关系运算符包括 in、instanceof 等。它们的优先级从上到下依次降低,in 的优先级最高,instanceof 的优先级最低。使用方法:
// 例1 var arr = [1, 2, 3]; if (1 in arr) { console.log('1在数组中'); } else { console.log('1不在数组中'); } // 例2 function Foo() {} var foo = new Foo(); if (foo instanceof Foo) { console.log('foo是Foo的实例'); } else { console.log('foo不是Foo的实例'); }
7. 三元运算符