1、算数运算符
运算符 描述 + 加 - 减 * 乘 / 除 % 系数 ++ 递加 - - 递减 ** 幂
2、赋值运算符
运算符 例子 等同于 = x = y x = y += x += y x = x + y -= x -= y x = x - y *= x = y x = x * y /= x /= y x = x / y %= x %= y x = x % y
3、比较运算符
运算符 描述 == 等于 === 等值等型 != 不相等 !== 不等值或不等型 > 大于 < 小于 >= 大于或等于 <= 小于或等于 ? 三元运算符
4、逻辑运算符
5、类型运算符
运算符 描述 typeof 返回变量的类型 instanceof 返回 true,如果对象是对象类型的实例
6、位运算符
位运算符处理 32 位数。 该运算中的任何数值运算数都会被转换为 32 位的数。结果会被转换回 JavaScript 数。
运算符 描述 列子 等同于 结果 十进制 & 与 5 & 1 0101 & 0001 0001 1 | 或 5 | 1 0101 | 0001 0101 5 ~ 非 ~5 ~0101 1010 10 ^ 异或 5 ^ 1 0101 ^ 0001 0100 4 << 有符号零填充左位移 5 << 1 0101 << 0001 1010 10 >> 有符号零填充右位移 5 >> 1 0101 >> 0001 0010 2 >>> 不区分符号零填充右位移 5 >>> 1 0101 >>> 0001 0010 2
上例使用 4 位无符号的例子。但是 JavaScript 使用 32 位有符号数 因此,在 JavaScript 中,~ 5 不会返回 10,而是返回 -6 ~00000000000000000000000000000101 将返回 11111111111111111111111111111010
7、展开运算符
这个是ES6新增的
运算符 描述 … 可以将数组或对象里面的值展开,还可以将多个值收集为一个变量
常见用法
const [ arg, arg1, ... arg2] = [ 'a' , 'b' , 'c' , 'd' ]
console. log ( arg) ;
console. log ( arg1) ;
console. log ( arg2) ;
const a = [ 1 , 2 , 3 ]
const b = [ 4 , 5 , 6 ]
const c = [ ... a, ... b]
console. log ( c) ;
Math. min ( ... c) ;
注:数组、对象等同理