TypeScript 运算符

TypeScript 运算符

什么是运算符

运算符定义了将在数据上执行的某些函数。运算符作用的数据称为操作数。考虑下面的表达式−

7 + 5 = 12

在这里,数值7、5和12是 操作数 ,而+和=是 运算符

TypeScript中的主要运算符可以分为−

  • 算术运算符
  • 逻辑运算符
  • 关系运算符
  • 位运算符
  • 赋值运算符
  • 三元/条件运算符
  • 字符串运算符
  • 类型运算符

算术运算符

假设变量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) 是 False
< 小于 (A < B) 是 True
>= 大于等于 (A >= B) 是 False
<= 小于等于 (A <= B) 是 True
== 相等 (A == B) 是 false
!= 不等 (A != B) 是 True

逻辑运算符

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

显示例子

运算符 描述 示例
&& (与) 当所有指定的表达式都返回true时,该运算符返回true (A > 10 && B > 10) 是False
|| (或) 当至少有一个指定的表达式返回true时,该运算符返回true (A > 10 || B >10) 是True
! (非) 该运算符返回表达式结果的反义。例如:!(>5) 返回false !(A >10 ) 是True

位运算符

假设变量A = 2,B = 3

显示示例

运算符 描述 示例
& (按位与) 对其整数参数的每个位执行布尔与操作。 (A & B) 是 2
| (按位或) 对其整数参数的每个位执行布尔或操作。 (A | B) 是 3
^ (按位异或) 对其整数参数的每个位执行布尔异或操作。异或表示操作数一为真或操作数二为真,但不能同时为真。 (A ^ B) 是 1
~ (按位取反) 是一元运算符,通过反转操作数中的所有位来操作。 (~B) 是 -4
<< (左移) 将第一个操作数中的所有位向左移动指定的位数。新位被填充为零。将一个值向左移动一位等同于将其乘以2,向左移动两位等同于乘以4,依此类推。 (A << 1) 是 4
>> (右移) 二进制右移运算符。左操作数的值向右移动右操作数指定的位数。 (A >> 1) 是 1
>>> (带零的右移) 此运算符类似于 >> 运算符,只是左侧移入的位始终为零。 (A >>> 1) 是 1

赋值运算符

展示示例

运算符 描述 例子
=(简单赋值) 将右操作数的值赋给左操作数 C = A + B 将 A + B 的值赋给 C
+=(加法赋值) 将右操作数加到左操作数上,并将结果赋给左操作数 C += A 等价于 C = C + A
-=(减法赋值) 将右操作数从左操作数中减去,并将结果赋给左操作数 C -= A 等价于 C = C – A
*=(乘法赋值) 将右操作数与左操作数相乘,并将结果赋给左操作数 C *= A 等价于 C = C * A
/=(除法赋值) 将左操作数除以右操作数,并将结果赋给左操作数

注意 − 相同的逻辑也适用于位运算符,它们将变为<<=、>>=、>>=、&=、|=^=

其他运算符

取反运算符 (-)

改变一个值的符号。让我们举一个例子。

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

在编译时,它会生成以下的JavaScript代码。

//Generated by typescript 1.8.10
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:string = "hello"+"world" 
console.log(msg)

在编译时,它会生成以下JavaScript代码。

//Generated by typescript 1.8.10
var msg = "hello" + "world";
console.log(msg);

它将产生以下输出−

helloworld

连接操作不会在字符串之间添加空格。多个字符串可以在一条语句中进行连接。

条件运算符 (?)

此运算符用于表示条件表达式。条件运算符有时也被称为三元运算符。其语法如下所示:

Test ? expr1 : expr2
  • Test − 指条件表达式

  • expr1 − 如果条件为真,则返回的值

  • expr2 − 如果条件为假,则返回的值

让我们来看下面的代码 −

var num:number = -2 
var result = num > 0 ?"positive":"non-positive" 
console.log(result)

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

编译后,将生成以下JavaScript代码。

//Generated by typescript 1.8.10
var num = -2;
var result = num > 0 ? "positive" : "non-positive";
console.log(result);

上述代码片段将生成以下输出 –

non-positive

类型操作符

typeof 操作符

这是一个一元操作符。该操作符返回操作数的数据类型。看下面的例子:

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

在编译时,它将生成以下JavaScript代码。

//Generated by typescript 1.8.10
var num = 12;
console.log(typeof num);   //output: number

它将产生以下输出−

number

instanceof

这个运算符可以用来测试对象是否属于指定的类型。在章节 classes 中讨论了 instanceof 运算符的使用。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程