ts:常见的运算符

ts:常见的运算符

  • 1 主要内容说明
  • 2 表格
    • 2.1 算数运算符
    • 2.2 赋值运算符
    • 2.3 比较运算符
    • 2.4 逻辑运算符
    • 2.5 位运算符
    • 2.6 三元运算符
  • 3 例子
    • 3.1 位运算符
      • 3.1.1 源码1 (位运算符)
      • 3.1.2 源码1运行效果
  • 3.结语
  • 4.定位日期

1 主要内容说明

ts中的各种运算符,代码中常常用得到,其他语言中也同样拥有相同的运算符。只需会一种语言的运算符就可以举一反三,会其他语言的运算符了。由于内容比较简单,简单的运算符具体代码举例便不进行了,只设置那些稍难一点的运算符,如三元运算符和位运算符。其实都是很容易,聪明的读者肯定能一看就会。

2 表格

2.1 算数运算符

比较常见的数学计算运算符。

运算符功能举例
加法764 + 467
减法764 - 467
×(*)乘法764 * 467
/除法764 / 467
%取余764 % 467
**幂运算(指数)2 ** 3(结果为 8)

2.2 赋值运算符

赋值运算符用于将值赋给变量。

运算符功能举例
=赋值let a = 764
+=加法赋值a += 764(等价于 a = a + 764)
-=减法赋值a -= 764(等价于 a = a - 764)
*=乘法赋值a *= 764(等价于 a = a * 764)
/=除法赋值a /= 764(等价于 a = a / 764)
%=取余赋值a %= 764(等价于 a = a % 764)
++累加n++ (等价于 n = n + 1)
--累减n - - (等价于 n = n - 1)

2.3 比较运算符

比较运算符通常用于比较两值,返回布尔值。

运算符功能举例
==相等(类型不严格)7 == ‘7’(返回 true)
===严格相等7 === ‘7’(返回 false)
!=不相等(类型不严格)7 != ‘7’(返回 false)
!==严格不相等7 !== ‘7’(返回 true)
大于7 > 6(返回 true)
<小于7 < 6(返回 false)
>=大于或等于7 >= 7(返回 true)
<=小于或等于7 <= 7(返回 true)

2.4 逻辑运算符

逻辑运算符用于组合布尔表达式。

运算符功能举例
||逻辑或true ||false(返回true)
&&逻辑与true && false(返回 false)
!逻辑非!true(返回 false)

2.5 位运算符

位运算符用于操作位。平常我们输入的为10进制的数,位运算符为转为二进制后进行相关的方法。为了让方法更直观,我们在后面再另起代码示例的源码1。

运算符功能举例
&位与7 & 4
位或7|4
^位异或7 ^ 4
~位非~7
<<左移7 << 4
>>右移7 >> 4
>>>无符号右移7 >>> 4

2.6 三元运算符

let A = 467;
let B = 764;
let max = (A > B) ? A : B; // 返回较大值

?左边的函数返回为真(ture)时,返回A值,反之,当?左边的函数返回为假(false)时,返回B值。
三元运算符问号左边为设置的函数,这里只是设置了一个非常简单的比较函数,开发中会有更复杂的逻辑函数。当?左边函数成立时,便执行内容A,不成立,则执行B。当然,?右边的A和B也可以各自设置方法,当满足问号左边的函数条件时,执行A的方法,不满足函数条件,则执行B的方法。

3 例子

3.1 位运算符

3.1.1 源码1 (位运算符)

let a = 7; // 7 的二进制表示为 0000000111
let b = 4; // 4 的二进制表示为 0000000100// 位与运算符(&)
// 只有在 a 和 b 的对应位都为 1 时,结果才为 1
let result_1 = a & b; // 结果:0000000100(即 4)
console.log(result_1); // 输出 4// 位或运算符(|)
// 只要 a 和 b 的对应位有一个为 1,结果就为 1
let result_2 = a | b; // 结果:0000000111(即 7)
console.log(result_2); // 输出 7// 位异或运算符(^)
// 当 a 和 b 的对应位不相同时,结果为 1
let result_3 = a ^ b; // 结果:0000000011(即 3)
console.log(result_3); // 输出 3// 位非运算符(~)
// 对 a 的每一位取反
let result_4 = ~a; // 结果:-8(即 11111111111111111111111111111000,32位补码表示)
console.log(result_4); // 输出 -8// 左移运算符(<<)
// 将 a 的二进制位向左移动 1 位,右侧补 0
let result_5 = a << 1; // 结果:0000001110(即 14)
console.log(result_5); // 输出 14// 右移运算符(>>)
// 将 a 的二进制位向右移动 1 位,符号位保持不变
let result_6 = a >> 1; // 结果:0000000011(即 3)
console.log(result_6); // 输出 3// 无符号右移运算符(>>>)
// 将 a 的二进制位向右移动 1 位,左侧补 0
let result_7 = a >>> 1; // 结果:0000000011(即 3)
console.log(result_7); // 输出 3

3.1.2 源码1运行效果

在这里插入图片描述

3.结语

运算符代码中用得非常多,所以归纳整合了一下。笔者认为本文中,最最重要的是三元运算符,在函数逻辑中用得好的话,可以让代码更简单和清晰。
由于笔者的能力有限,创作的内容有所不足在所难免,也敬请读者包涵和指出,万分感谢!

4.定位日期

2024-11-3;
20:01;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/59191.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

unity搭建场景学习

unity搭建场景学习 创建场景创建gameobject创建材质&#xff0c;用于给gameobject上色拖拽材质球上色上色原理设置多个材质方式设置贴图的方式 效果设置光滑度一些预览设置菜单渲染模型与碰撞模型网格渲染参数1. materials(材质)2. lighting(光照)3. reflection probes(反射探针…

『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC

『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC 文章目录 一. 『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC1. 介绍 二. 参考文献 一. 『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC 如何在 Ubuntu 22.04 上安装和配置 VNChttps://hub.docker.c…

xlwings,让excel飞起来!

excel已经成为必不可少的数据处理软件&#xff0c;几乎天天在用。python有很多支持操作excel的第三方库&#xff0c;xlwings是其中一个。 关于xlwings xlwings开源免费&#xff0c;能够非常方便的读写Excel文件中的数据&#xff0c;并且能够进行单元格格式的修改。 xlwings还…

03.DDD六边形架构

学习视频来源&#xff1a;DDD独家秘籍视频合集 https://space.bilibili.com/24690212/channel/collectiondetail?sid1940048&ctype0 文章目录 什么是依赖DDD四层架构六边形架构代码实现 想要详细了解六边形架构&#xff0c;可以看我之前的一篇文章。是对六边形架构原文的翻…

在VS Code中操作MySQL数据库

【基础篇】 【小白专用24.5.26 已验证】VSCode下载和安装与配置PHP开发环境&#xff08;详细版&#xff09;_vscode php-CSDN博客 ~~~~~~~~~~~~~~~~~~~~~~~~~ 在VS Code中下载插件 Prettier SQL VSCode 和 MySQL : 随后在VS Code中点击Database图标 在连接界面输入MySQL数据库…

使用WebAssembly优化Web应用性能

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 使用WebAssembly优化Web应用性能 引言 WebAssembly 简介 安装工具 创建 WebAssembly 项目 编写 WebAssembly 代码 编译 WebAssem…

AI工具列表

AI写作工具 工具名称推测的https://地址笔灵AI写作https://ibiling.cn/Paperpalhttps://paperpal.com新华妙笔https://miaobi.xinhuaskl.com/讯飞写作https://iflytek.com墨狐AIhttps://inkfox-ai.com/火山写作https://www.writingo.net/橙篇https://chengpian.com&#xff08…

HTML 基础标签——元数据标签 <meta>

文章目录 1. `<meta>` 标签概述2. 属性详解2.1 `charset` 属性2.2 `name` 属性2.3 `content` 属性2.4 `http-equiv` 属性3. 其他常见属性小结在 HTML 文档中,元数据标签 <meta> 是一种重要的标签,用于提供关于文档的信息,这些信息不直接显示在网页内容中,但对于…

基于STM32的智能手环设计

本设计的主控芯片采用STM32F103C8T6&#xff0c;体温模块采用DS18B20温度传感器&#xff0c;显示模块采用OLED显示&#xff0c;心率、血氧的测量采用MAX30102模块既不需要外接电路&#xff0c;又可以保障数据稳定&#xff0c;内部还具有降噪功能。采用这些模块&#xff0c;保证…

微信小程序,打开新的项目,调试遇见[ app.json 文件内容错误] app.json: 在项目根目录未找到 app.json

1&#xff0c;首先&#xff0c;在开发工具右上角&#xff0c;打开详情&#xff1b;设置基础库&#xff1b;3.6.3 2&#xff0c;第二步&#xff0c;在项目目录下&#xff0c;找到app.json文件存在 3&#xff0c;第三步&#xff0c;修改项目根目录下&#xff0c;project.config.j…

MFC界面开发组件Xtreme Toolkit Pro v24全新发布—完整的SVG支持

Codejock软件公司的Xtreme Toolkit Pro是屡获殊荣的VC界面库&#xff0c;是MFC开发中最全面界面控件套包&#xff0c;它提供了Windows开发所需要的11种主流的Visual C MFC控件&#xff0c;包括Command Bars、Controls、Chart Pro、Calendar、Docking Pane、Property Grid、Repo…

FreeRTOS学习8——开启任务调度器API函数简介

开启任务调度器API函数简介 任务调度开启任务调度器API函数简介**函数** **vTaskStartScheduler()****函数** **xPortStartScheduler()****函数** **prvStartFirstTask()****函数** **vPortSVCHandler()****注意**补充**出栈/压栈汇编指令详解** 任务调度 开启任务调度器API函…

SIGNAL TAP使用记录

一、首先编译工程 二、打开signal tap&#xff0c;并设置抓取时钟以及采样深度 二、点击set up&#xff0c;然后双击空白处&#xff0c;会弹出右侧窗口&#xff0c;点击filter选择pre_synthesis&#xff0c;这里选择综合前的信号观测&#xff0c;要确保左侧窗口内的信号是黑色…

Windows版 nginx安装,启动,目录解析,常用命令

Windows版 nginx安装&#xff0c;启动&#xff0c;目录解析&#xff0c;常用命令 一级目录二级目录三级目录 1. 下载2. 启动方式一&#xff1a;方式二&#xff1a; 3. 验证是否启动4. 安装目录解析5. 常用命令 一级目录 二级目录 三级目录 1. 下载 官网下载&#xff1a;ngi…

kafka相关面试题

文章目录 什么是消息中间件&#xff1f;kafka 是什么&#xff1f;有什么作用&#xff1f;kafka 的架构是怎么样的&#xff1f;Kafka Replicas是怎么管理的&#xff1f;如何确定当前能读到哪一条消息&#xff1f;生产者发送消息有哪些模式&#xff1f;发送消息的分区策略有哪些&…

Python | Leetcode Python题解之第519题随机翻转矩阵

题目&#xff1a; 题解&#xff1a; class Solution:def __init__(self, m: int, n: int):self.m mself.n nself.total m * nself.map {}def flip(self) -> List[int]:x random.randint(0, self.total - 1)self.total - 1# 查找位置 x 对应的映射idx self.map.get(x,…

SHEEL脚本编程

一、shell基本知识 Ⅰ、为什么要学习和使用shell编程 通过编程&#xff0c;简化日常的维护工作&#xff0c;使得管理员从简单的重复劳动解脱出来 Ⅱ、什么是shell shell的功能 Shell又称命令解释器&#xff0c;它能识别用户输入的各种命令&#xff0c;并传递给操作系统。它…

三、Kafka集群

一、Kafka集群的概念 1、目的 高并发、高可用、动态扩展。 主备数据架构、双活节点、灾备数据中心。 如果是服务的地理范围过大也可以使不同的集群节点服务不同的区域&#xff0c;降低网络延迟。 2、Kafka集群的基本概念 1&#xff09;复制&#xff08;镜像&#xff09; kaf…

关于Android Studio Koala Feature Drop | 2024.1.2下载不了插件的解决办法

解决 androidStudio Settings->Plugins下载插件&#xff0c;点击install后没反应&#xff0c;同时插件描述相关显示不出来 第一步&#xff1a; 第二步&#xff1a; 点击设置&#xff0c;勾选Auto-detect proxy settings&#xff0c;输入网址 https://plugins.jetbrains.com…

笔记本双系统win10+Ubuntu 20.04 无法调节亮度亲测解决

sudo add-apt-repository ppa:apandada1/brightness-controller sudo apt-get update sudo apt-get install brightness-controller-simple 安装好后找到一个太阳的图标&#xff0c;就是这个软件&#xff0c;打开后调整brightness&#xff0c;就可以调整亮度&#xff0c;可…