文章已同步至掘金:https://juejin.cn/post/6844903893265039373
欢迎访问😃,有任何问题都可留言评论哦~
算术运算符
给定 y=5,下面表格解释了这些算术运算符:
| 运算符 | 描述 | 例子 | x运算结果 | y运算结果 | 
|---|---|---|---|---|
| + | 加法 | x=y+2 | 7 | 5 | 
| - | 减法 | x=y-2 | 3 | 5 | 
| * | 乘法 | x=y*2 | 10 | 5 | 
| / | 除法 | x=y/2 | 2.5 | 5 | 
| % | 取模(余数) | x=y%2 | 1 | 5 | 
| ++ | 自增 | x=++y | 6 | 6 | 
| x=y++ | 5 | 6 | ||
| – | 自减 | x=–y | 4 | 4 | 
| x=y– | 5 | 
注:i++   i的值肯定要加1  i++整体是一个旧值
  ++i   i的值肯定要加1  ++i整体是一个新值
注:++ – 运算符有副作用 整体也有一个值
用于字符串的 + 运算符:
加 (+) 运算符还可以把文本值或字符串变量加起来(连接起来)。
例如:
text1 = "How ";
text2 = "are you?";
text3 = text1 + text2;
text3 运算结果:
How are you?
对字符串和数字进行加法运算:
两个数字相加,返回数字相加的和,如果数字与字符串相加,返回字符串,如下实例:
x=5+5;
y="5"+5;
z="Hello"+5;
x、y、z 输出结果如下:
10
55
Hello5
赋值运算符
给定 x=10 和 y=5,下面的表格解释了赋值运算符:
| 运算符 | 例子 | 等同于 | 运算结果 | 
|---|---|---|---|
| = | x=y | x=5 | |
| += | x+=y | x=x+y | x=15 | 
| -= | x-=y | x=x-y | x=5 | 
| *= | x*=y | x=x*y | x=50 | 
| /= | x/=y | x=x/y | x=2 | 
| %= | x%=y | x=x%y | 
赋值运算符 具有 右结合性
例如:
x=y=z=10
把10赋给了z,z=10整体也有一个值,是左值,然后把整体这个值赋给y,依次类推,而不是把10赋给了x,y,z;
比较运算符
比较运算符在逻辑语句中使用,以测定变量或值是否相等。
给定 x=5,下面的表格解释了比较运算符:
| 运算符 | 描述 | 比较 | 返回值 | 
|---|---|---|---|
| == | 等于 | x==8 | false | 
| x==5 | true | ||
| === | 绝对等于(值和类型均相等) | x===“5” | false | 
| x===5 | true | ||
| != | 不等于 | x!=8 | true | 
| !== | 不绝对等于(值和类型有一个不相等,或两个都不相等) | x!==“5” | true | 
| x!==5 | false | ||
| > | 大于 | x>8 | false | 
| < | 小于 | x<8 | true | 
| >= | 大于或等于 | x>=8 | false | 
| <= | 小于或等于 | x<=8 | true | 
逻辑运算符
逻辑运算符用于测定变量或值之间的逻辑。
给定 x=6 以及 y=3,下表解释了逻辑运算符:
| 运算符 | 描述 | 例子 | 
|---|---|---|
| && | 逻辑与(and) | (x<10 && y>1) 为 true | 
| || | 逻辑或(or) | (x==5 || y==5) 为 false | 
| ! | 逻辑非(not) | !(x==y)为true | 
类型运算符
| 运算符 | 描述 | 
|---|---|
| typeof | 返回变量的类型 | 
| instanceof | 返回 true,如果对象是对象类型的实例。 | 
位运算符
位运算符处理 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<<1 | 1010 | 10 | 
| >> | 有符号右位移 | 5>>1 | 0101>>1 | 0010 | 2 | 
| >>> | 零填充右位移 | 5>>>1 | 0101>>>1 | 0010 | 2 | 
上例使用 4 位无符号的例子。但是 JavaScript 使用 32 位有符号数。
因此,在 JavaScript 中,~ 5 不会返回 10,而是返回 -6。
~00000000000000000000000000000101 将返回 11111111111111111111111111111010。
条件运算符
格式:
条件表达式?语句1:语句2;
执行流程:
先算条件表达式,若条件表达式为真则执行语句1,并返回执行结果。如果条件表达式为假false,则执行语句2,并返回执行结果。如果条件表达式的值是非布尔值则会转换成布尔值。
例如:
1>2 ? yes : no;
如果 1>2 成立,输出yes,否则输出no;
运算符的优先级
下图运算符优先级从高到底排列

 
             
           
                         
           
             
            
评论区