当前位置: 首页 > 文档资料 > ES 6 入门教程 >

ES 6 运算符

优质
小牛编辑
137浏览
2023-12-01

表达式是一种特殊的语句,其计算结果为值。每个表达式都由以下两部分组成

  • Operands(操作数):表示数据
  • Operator(运算符):定义如何处理操作数以生成值

javascript支持以下类型的运算符

算术运算符

假设变量A和B中的值分别为10和5。

运算符描述
+加法返回操作数的和。A+B是15
-减法返回值的差异。A-B是5
*乘法返回值的乘积。A*B是50
/除法执行除法运算并返回商。A/B是2
%模数执行除法并返回剩余部分。A%B为0
++增量将变量的值递增一个。A++是11
--减量将变量的值减少一个。A--是9

关系运算符

关系运算符测试或定义两个实体之间的关系类型。关系运算符返回布尔值,即true/false。

假设A的值是10,B是20。

运算符描述
>大于(A>B)是虚假的
<小于(A<B)是真的
>=大于或等于(A>=B)是假的
<=小于或等于(A<=B)为真
==等于(A==B)是假的
!=不等于(A!=B)是真的

逻辑运算符

逻辑运算符用于组合两个或多个条件。逻辑运算符也返回布尔值。假设变量a的值为10,b的值为20。

运算符运算符
&&只有当所有指定的表达式返回true时,运算符才返回true。(A>10&&B>10)是假的
||如果指定的表达式中至少有一个返回true,则运算符返回true。(A > 10 || B > 10)为真
!运算符返回表达式结果的逆值。例如:!(7>5)返回false。!(A > 10)是真的

位运算符

javascript支持以下按位运算符,下表总结了javascript的位运算符

运算符用法描述
按位与A&B在两个操作数的对应位数为1的每个位置返回一个
按位或a|b在每个位置返回一个,其中一个或两个操作数的对应位是一个。
按位异或a^b在每个位置返回一个,其中任一操作数的对应位数,但不是两个操作数的对应位。
按位取反~a反转其操作数的位。
左移a << b将a在二进制表示b(<32)位向左移动,以零从右移动
右移a >> b将a在二进制表示中向右移动b(<32)位,丢弃移位的位
零填充右移位a >>> b向右移动a in二进制表示b(<32)位,丢弃移出的位,左移零。

赋值运算符

下表总结了赋值运算符

操作与描述
1=(简单分配)

将右侧操作数的值赋给左侧操作数。
示例:−c=a+b:将a+b的值赋给c

2+=(添加和赋值)
将右操作数添加到左操作数,并将结果赋值到左操作数。
示例:−c+=a等于c=c+a
3-=(减法和赋值)
从左操作数中减去右操作数,并将结果赋给左操作数。
示例:c-=a等于c=c-a
4*=(乘法和赋值)
将右操作数与左操作数相乘,并将结果赋给左操作数。
示例:c*=a等于c=c*a
5/=(除法和赋值)
将左操作数与右操作数相除,并将结果赋给左操作数。

注:相同的逻辑适用于位运算符,因此它们将变为<<=、>>=、>>=、&=、=和^=。

其他运算符

一元减法运算符(-):更改值的符号

var x = 4 var y = -x; 
console.log("value of x: ",x); //outputs 4 
console.log("value of y: ",y); //outputs -4

输出结果为:

value of x:  4 
value of y:  -4

字符串运算符:串联运算符(+)

当应用于字符串时,+运算符将第二个字符串附加到第一个字符串

var msg = "hello"+"world"; 
console.log(msg);

输出结果为:

helloworld

串联操作不会在字符串之间添加空格,可以在单个语句中连接多个字符串。

条件运算符(?)

此运算符用于表示条件表达式。条件运算符有时也称为三元运算符。

Test ? expr1 : expr2
  • test:指条件表达式
  • expr1:条件为真时返回的值
  • expr2:如果条件为假,则返回的值
var num = -2 
var result = num > 0 ?"positive":"non-positive";
 console.log(result);

第2行检查变量num中的值是否大于零。如果将num设置为大于零的值,则返回字符串“positive”否则返回字符串“non-positive
”字符串。

输出结果为:

non-positive

类型运算符

它是一元运算符,此运算符返回操作数的数据类型。下表列出了javascript中typeof运算符返回的数据类型和值。

类型类型返回的字符串
Number"number"
String"string"
Boolean"boolean"
Object"object"

下面的示例代码将数字显示为输出

var num = 12 console.log(typeof num); //output: number

输出结果为:

number