JavaScript运算符
- 1、一元运算符
- 2、二元运算符
- 1、算术运算符
- 2、关系运算符
- 3、逻辑运算符
- 4、赋值运算符
- 3、三元运算符
- 4、位运算符
根据表达式中参与运算的数据个数,把运算符分为一元运算符,二元运算符,三元运算符等等,这里只记录常用的。
1、一元运算符
| 符号 | 描述 |
|---|
| + | 加法运算符 |
| - | 减法运算符 |
| ++ | 自增运算符 |
| – | 自减运算符 |
| ! | 非 |
2、二元运算符
1、算术运算符
| 符号 | 描述 |
|---|
| + | 加法运算符。 加号有两种作用,分别是 加法和连字符: 1、加号两边的操作数都是数字,则为加法 2、有一个操作数为字符串,则为连字符 |
| - | 减法运算符 |
| * | 乘法运算符 |
| ** | 幂,将第一个操作数提升到第二个操作数的幂。 ES7
示例:var x = 5; var z = x ** 2; //z=25 |
| / | 除法运算符 |
| % | 取余运算符。例如:a%b 代表 a 除以 b 的余数,8 %5 = 3 |
如果运算符两边是数值字符串时,JS会自动把数值字符串转换为相应数值进行运算;假如有一边不能转换为数值,则结果为NaN。
2、关系运算符
| 符号 | 描述 |
|---|
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
| == | 等于 |
| != | 不等于 |
| === | 全等于 |
| !== | 不全等于 |
注意:
- 如果运算符两边都是number,则进行数值比较;
- 如果运算符两边都是string,则比较两个字符串相应位置上的字符ASCII码;
- 如果一边是数值,一边是字符串,则自动把字符串转换为数值,再进行比较;
- 如果一边是数值,一边是boolean类型,则自动把boolean类型转换为数值,再进行比较;
特别注意: 任何值与NaN比较,它的值都是 false 。
3、逻辑运算符
4、赋值运算符
| 符号 | 描述 |
|---|
| = | 赋值 |
| += | 快捷赋值,例如: a+=1 等价与 a=a+1 |
| -= | 快捷赋值,例如: a-=1 等价与 a=a-1 |
| *= | 快捷赋值,例如: a*=1 等价与 a=a*1 |
| /= | 快捷赋值,例如: a/=1 等价与 a=a/1 |
| %= | 快捷赋值,例如: a%=1 等价与 a=a%1 |
| ++ | 自增运算,一元运算符 ,例如: var num1 = 3; num1++ console.log(num1) // num 的值为 4 |
| – | 自减运算,一元运算符,例如: var num2 = 3; num2-- console.log(num2) // num2 的值为 2 |
3、三元运算符
| 名称 | 描述 |
|---|
| 条件 ? 值 1 : 值 2 | 如果条件为真,则结果取值 1。否则为值 2。 |
4、位运算符
| 运算符 | 示例 | 描述 |
|---|
| 按位与 & | a & b | 在 a,b 的位表示中,每一个对应的位都为 1 则返回 1,否则返回 0 |
| 按位或 | | `a | b` |
| 按位异或 ^ | a ^ b | 在 a,b 的位表示中,每一个对应的位,两个不相同则返回 1,相同则返回 0 |
| 按位非 ~ | ~ a | 反转被操作数的位 |
| 左移 << | a << b | 将 a 的二进制串向左移动 b 位,右边移入 0 |
| 算术右移 >> | a >> b | 把 a 的二进制表示向右移动 b 位,丢弃被移出的所有位。(译注:算术右移左边空出的位是根据最高位是 0 和 1 来进行填充的) |
| 无符号右移 >>> | a >>> b | 把 a 的二进制表示向右移动 b 位,丢弃被移出的所有位,并把左边空出的位都填充为 0 |
| 上一篇文章 | 下一篇文章 |
|---|
| JavaScript基本语法(二) | JavaScript函数(四) |
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!