当前位置: 首页 > news >正文

TypeScript教程(四)基本运算符

一、运算符

TypeScript包含以下几种运算符:

1.算术运算符

2.逻辑运算符

3.关系运算符

4.按位运算符

5.赋值运算符

6.三元/条件运算符

7.字符串运算符

8.类型运算符

1.算术运算符

y=5

运算符描述例子x 运算结果y 运算结果
+加法x=y+275
-减法x=y-235
*乘法x=y*2105
/除法x=y/22.55
%取模(余数)x=y%215
++自增x=++y66
x=y++56
--自减x=--y44
x=y--54

2.关系运算符

用于计算结果是否为true或者false,

x=5

运算符描述比较返回值
==等于x==8false
x==5true
!= 不等于x!=8true
> 大于x>8false
< 小于x<8true
>= 大于或等于x>=8false
<= 小于或等于x<=8true

3.逻辑运算符 

用于测定变量或值之间的逻辑

x=6,y=3

运算符描述例子
&&and(x < 10 && y > 1) 为 true
||or(x==5 || y==5) 为 false
!not!(x==y) 为 true

短路运算符 (&&与 || )

&& 与 || 运算符可用于组合表达式。 && 运算符只有在左右两个表达式都为 true 时才返回 true。|| 运算符只要其中一个表达式为 true ,则该组合表达式就会返回 true。

4.位运算符

位操作是程序设计中对位模式按位或二进制的一元和二元操作

运算符描述例子类似于结果十进制
&AND,按位与处理两个长度相同的二进制数,两个相应的二进位都为 1,该位的结果值才为 1,否则为 0。x = 5 & 10101 & 00010001 1
|OR,按位或处理两个长度相同的二进制数,两个相应的二进位中只要有一个为 1,该位的结果值为 1。x = 5 | 10101 | 00010101 5
~取反,取反是一元运算符,对一个二进制数的每一位执行逻辑反操作。使数字 1 成为 0,0 成为 1。x = ~ 5 ~01011010 -6
^异或,按位异或运算,对等长二进制模式按位或二进制数的每一位执行逻辑异按位或操作。操作的结果是如果某位不同则该位为 1,否则该位为 0。x = 5 ^ 10101 ^ 00010100 4
<<左移,把 << 左边的运算数的各二进位全部左移若干位,由 << 右边的数指定移动的位数,高位丢弃,低位补 0。x = 5 << 10101 << 11010 10
>>右移,把 >> 左边的运算数的各二进位全部右移若干位,>> 右边的数指定移动的位数。x = 5 >> 10101 >> 100102
>>>无符号右移,与有符号右移位类似,除了左边一律使用0 补位。x = 2 >>> 10010 >>> 100011

5.赋值运算符 

用于给变量赋值

给定x=10,y=5

运算符例子实例x 值
= (赋值)x = yx = yx = 5
+= (先进行加运算后赋值)x += yx = x + yx = 15
-= (先进行减运算后赋值)x -= yx = x - yx = 5
*= (先进行乘运算后赋值)x *= yx = x * yx = 50
/= (先进行除运算后赋值)x /= yx = x / yx = 2

6.三元运算符

三元运算有3个操作数,并且需要判断布尔表达式的值,该运损负担主要是决定哪个值应该赋值给变量

Test ? expr1 : expr2

Test:指定的条件语句

expr1:如果是条件语句,Test返回true则返回该值

expr2:如果是条件语句,Test返回false则返回该值

7.类型运算符

typeof运算符

是一元运算符,返回操作数的数据类型

示例:

var num = 12 
console.log(typeof num);   //输出结果: number

结果:

number

instanceof

用于判断对象是否为指定的类型

8.其他运算符

负号运算符(-)

更改操作数的符号

var x:number = 4 
var y = -x; 
console.log("x 值为: ",x);   // 输出结果 4 
console.log("y 值为: ",y);   // 输出结果 -4

字符串运算符,连接运算符(+)

运算符可以拼接成两个字符串

var msg:string = "RUNOOB"+".COM" 
console.log(msg)

http://www.lryc.cn/news/130526.html

相关文章:

  • 计算机网络的性能指标
  • BBS项目day04 文章详情页、点赞点菜、评论功能
  • el-table分页后序号连续的两种方法
  • Nginx反向代理技巧
  • kafka--kafka的基本概念-副本概念replica
  • css伪元素实现li列表圆点相连+锚点跳转悬浮窗实现
  • IronPDF for .NET Crack
  • 【C++进阶】继承、多态的详解(多态篇)
  • excel快速选择数据、选择性粘贴、冻结单元格
  • 【数仓建设系列之一】什么是数据仓库?
  • Vue2-配置脚手架、分析脚手架、render函数、ref属性、props配置项、mixin配置项、scoped样式、插件
  • VS2015项目中,MFC内存中调用DLL函数(VC6生成的示例DLL)
  • 人流目标跟踪pyqt界面_v5_deepsort
  • angular 子组件ngOnChanges监听@input传入的输入属性
  • 移植PeerTalk开源库IOS的USB通信监听服务到QT生成的FFmpeg工程
  • PHREEQC模型化学热力学理论和数据库.dat、各种模拟反应平衡反应模拟、化学动力模拟、反应迁移模拟
  • centos下使用jemalloc解决Mysql内存泄漏问题
  • 【100天精通python】Day41:python网络爬虫开发_爬虫基础入门
  • 开源和自研——机器人
  • 【AIGC 讯飞星火 | 百度AI|ChatGPT| 】智能对比
  • Wazuh安装及使用
  • docker pull 设置代理 centos
  • 仪表板展示 | DataEase看中国:2023年中国电影市场分析
  • 在APP中如何嵌入小游戏?
  • 神经网络基础-神经网络补充概念-02-逻辑回归
  • DICOM图像的常用一些参数解析
  • Java虚拟机(JVM):虚拟机栈溢出
  • MySQL流程控制
  • 智安网络|深入比较:Sass系统与源码系统的差异及选择指南
  • Day14 01-Shell脚本编程详解