无涯教程-Javascript - 运算符

让无涯教程用一个简单的表达式 4 + 5=9 。这里的4和5称为操作数," +"称为运算符,JavaScript支持以下类型的运算符。

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 赋值运算符
  • 三元)运算符

算术运算符

JavaScript支持以下算术运算符,假设变量A=10,变量B=20,则:

Sr.No.Operator & Description
1

+(加法)

两个数相加   ,如: A + B=30

2

-(减法)

第一个数减去第二个数 , 如: A-B=-10

3

*(乘法)

两个数相乘,如: A * B=200

4

/(除)

分子除以分母取整,如: B/A=2

5

%(取模)

相除后的余数,如: B%A=0

6

++(增量)

将整数值加1,如: A ++=11

7

-(递减)

将整数值减一,如: A--=9

注意  -  加法运算符(+)适用​​于数字和字符串。如" a" + 10将得到" a10"。

以下代码显示了如何在JavaScript中使用算术运算符。

<html><body><script type = "text/javascript"><!--var a = 33;var b = 10;var c = "Test";var linebreak = "<br />";document.write("a + b=");result = a + b;document.write(result);document.write(linebreak);document.write("a - b=");result = a - b;document.write(result);document.write(linebreak);document.write("a/b=");result = a/b;document.write(result);document.write(linebreak);document.write("a % b=");result = a % b;document.write(result);document.write(linebreak);document.write("a + b + c=");result = a + b + c;document.write(result);document.write(linebreak);a = ++a;document.write("++a=");result = ++a;document.write(result);document.write(linebreak);b = --b;document.write("--b=");result = --b;document.write(result);document.write(linebreak);//--></script>Set the variables to different values and then try...</body>
</html>

运行上面代码输出

a + b=43
a - b=23
a/b=3.3
a % b=3
a + b + c=43
++a=35
--b=8
Set the variables to different values and then try...

比较运算符

JavaScript支持以下比较运算符,假设变量A=10,变量B=20,则:

Sr.No.Operator & Description
1

==(等于)

检查两个值是否相等,如 :(A == B)=false。

2

!=(不等于)

检查两个值是否不相等,如:(A!= B)=true。

3

> (大于)

检查左数的值是否大于右数的值,如: (A > B)=false

4

< (小于)

检查左数的值是否小于右数的值,如: (A < B)=true.

5

>= (大于或等于)

检查左操作数的值是否大于或等于右操作数的值,如: (A >= B)=false.

6

<= (小于或等于)

检查左操作数的值是否小于或等于右操作数的值,如: (A <= B)=true

以下代码显示了如何在JavaScript中使用比较运算符。

<html><body>  <script type = "text/javascript"><!--var a = 10;var b = 20;var linebreak = "<br />";document.write("(a == b) => ");result = (a == b);document.write(result);document.write(linebreak);document.write("(a < b) => ");result = (a < b);document.write(result);document.write(linebreak);document.write("(a > b) => ");result = (a > b);document.write(result);document.write(linebreak);document.write("(a != b) => ");result = (a != b);document.write(result);document.write(linebreak);document.write("(a >= b) => ");result = (a >= b);document.write(result);document.write(linebreak);document.write("(a <= b) => ");result = (a <= b);document.write(result);document.write(linebreak);//--></script>      Set the variables to different values and different operators and then try...</body>
</html>

运行上面代码输出

(a == b) => false 
(a < b) => true 
(a > b) => false 
(a != b) => true 
(a >= b) => false 
a <= b) => true
Set the variables to different values and different operators and then try...

逻辑运算符

JavaScript支持以下逻辑运算符,假设变量A=10,变量B=20,则:

Sr.No.Operator & Description
1

&& (AND)

如果两个数都不为零,则返回为true。如: (A && B)=true.

2

|| (OR)

如果两个数中的任何一个都不为零,则返回true。如:(A || B)=true。

3

!(NOT)

反转其操作数的逻辑状态,如果条件为true,则返回false。如: ! (A && B)=false.

尝试以下代码,以了解如何在JavaScript中实现逻辑运算符。

<html><body>   <script type = "text/javascript"><!--var a = true;var b = false;var linebreak = "<br />";document.write("(a && b) => ");result = (a && b);document.write(result);document.write(linebreak);document.write("(a || b) => ");result = (a || b);document.write(result);document.write(linebreak);document.write("!(a && b) => ");result = (!(a && b));document.write(result);document.write(linebreak);//--></script>      <p>Set the variables to different values and different operators and then try...</p></body>
</html>

运行上面代码输出

(a && b) => false 
(a || b) => true 
!(a && b) => true
Set the variables to different values and different operators and then try...

按位运算符

JavaScript支持以下按位运算符,假设变量A=2,变量B=3,则:

Sr.No.Operator & Description
1

& ( AND)

对其整数参数的每一位执行布尔"AND"运算。如: (A & B) =  2.

2

| (OR)

对其整数参数的每一位执行布尔"OR"运算。如:(A | B) =  3。

3

^(XOR)

对其整数参数的每一位执行布尔异或(^)运算。如:(A ^ B)=1。

4

〜(NOT)

一元运算符,通过反转操作数中的所有位进行操作。如:(〜B)=-4。

5

<< (左移)

将值左移一个位置等同于将其乘以2,将两个位置左移等同于乘以4,新位填充零。如: (A << 1)  =  4.

6

>> (右移)

与左移相反,右移一位相等于除以2。如: (A >> 1)=1.

7

>>> (右移零)

该运算符类似于>>运算符,不同之处在于向左移的位始终为零。如: (A >>> 1)=1.

尝试使用以下代码在JavaScript中实现按位运算符。

<html><body>   <script type = "text/javascript"><!--var a = 2; //Bit presentation 10var b = 3; //Bit presentation 11var linebreak = "<br />";document.write("(a & b) => ");result = (a & b);document.write(result);document.write(linebreak);document.write("(a | b) => ");result = (a | b);document.write(result);document.write(linebreak);document.write("(a ^ b) => ");result = (a ^ b);document.write(result);document.write(linebreak);document.write("(~b) => ");result = (~b);document.write(result);document.write(linebreak);document.write("(a << b) => ");result = (a << b);document.write(result);document.write(linebreak);document.write("(a >> b) => ");result = (a >> b);document.write(result);document.write(linebreak);//--></script>      <p>Set the variables to different values and different operators and then try...</p></body>
</html>

运行上面代码输出

(a & b) => 2 
(a | b) => 3 
(a ^ b) => 1 
(~b) => -4 
(a << b) => 16 
(a >> b) => 0
Set the variables to different values and different operators and then try...

赋值运算符

JavaScript支持以下赋值运算符:

Sr.No.Operator & Description
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

/=(相除和赋值)

将左操作数除以右操作数,并将输出分配给左操作数。如: C/= A 等于 C=C/A

6

%=(取模和赋值)

使用两个操作数取模,并将输出分配给左操作数。如 : C%= A等于C=C%A

尝试以下代码在JavaScript中实现赋值运算符。

<html><body>   <script type = "text/javascript"><!--var a = 33;var b = 10;var linebreak = "<br />";document.write("Value of a => (a=b) => ");result = (a = b);document.write(result);document.write(linebreak);document.write("Value of a => (a += b) => ");result = (a += b);document.write(result);document.write(linebreak);document.write("Value of a => (a -= b) => ");result = (a -= b);document.write(result);document.write(linebreak);document.write("Value of a => (a *= b) => ");result = (a *= b);document.write(result);document.write(linebreak);document.write("Value of a => (a /= b) => ");result = (a /= b);document.write(result);document.write(linebreak);document.write("Value of a => (a %= b) => ");result = (a %= b);document.write(result);document.write(linebreak);//--></script>      <p>Set the variables to different values and different operators and then try...</p></body>
</html>

运行上面代码输出

Value of a => (a=b) => 10
Value of a => (a += b) => 20 
Value of a => (a -= b) => 10 
Value of a => (a *= b) => 100 
Value of a => (a /= b) => 10
Value of a => (a %= b) => 0
Set the variables to different values and different operators and then try...

条件运算符(?:)

条件运算符首先对表达式的真值或假值求值,然后根据求值输出执行两个给定语句之一。

NO描述
1

? :(三元运算符)

eg: x==2?X:Y; 如果x==2,则返回X,否则返回Y

请尝试以下代码,以了解条件运算符在JavaScript中的工作方式。

<html><body>   <script type = "text/javascript"><!--var a = 10;var b = 20;var linebreak = "<br />";document.write ("((a > b) ? 100 : 200) => ");result = (a > b) ? 100 : 200;document.write(result);document.write(linebreak);document.write ("((a < b) ? 100 : 200) => ");result = (a < b) ? 100 : 200;document.write(result);document.write(linebreak);//--></script>      <p>Set the variables to different values and different operators and then try...</p></body>
</html>

运行上面代码输出

((a > b) ? 100 : 200) => 200 
((a < b) ? 100 : 200) => 100
Set the variables to different values and different operators and then try...

类型运算符

typeof 运算符是一元运算符,位于其单个操作数的前面,该操作数可以是任何类型。它的值是一个字符串,指示操作数的数据类型。

这是 typeof 运算符的返回值列表。

类型由typeof返回的字符串
Number"number"
String"string"
Boolean"boolean"
Object"object"
Function"function"
Undefined"undefined"
Null"object"

以下代码显示了如何实现 typeof 运算符。

<html><body>      <script type = "text/javascript"><!--var a = 10;var b = "String";var linebreak = "<br />";result = (typeof b == "string" ? "B is String" : "B is Numeric");document.write("Result => ");document.write(result);document.write(linebreak);result = (typeof a == "string" ? "A is String" : "A is Numeric");document.write("Result => ");document.write(result);document.write(linebreak);//--></script>      <p>Set the variables to different values and different operators and then try...</p></body>
</html>

运行上面代码输出

Result => B is String 
Result => A is Numeric
Set the variables to different values and different operators and then try...

参考链接

https://www.learnfk.com/javascript/javascript-operators.html

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

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

相关文章

[RocketMQ] Broker CommitLogDispatcher 异步构建ConsumeQueue和IndexFile源码解析 (十四)

CommitLogDispatcherBuildConsumeQueue: 异步构建ConsumerQueue。CommitLogDispatcherBuildIndex: 异步构建IndexFile。 文章目录 1.CommitLogDispatcherBuildConsumeQueue构建ConsumeQueue1.1 putMessagePositionInfo写入消息位置信息1.2 findConsumeQueue查找ConsumeQueue1.2…

go初识iris框架(二) - get,post请求和数据格式

继初步了解iris后 文章目录 获取url路径获取数据get请求post请求获取JSON数据格式JSON返回值获取XML数据格式XML返回值 获取url路径 package mainimport "github.com/kataras/iris/v12"func main(){app : iris.New()app.Get("/hello",func(ctx iris.Conte…

部分安卓端ncnn模型推理输出数据存在大量-nan和nan的问题

原文issue链接&#xff1a;部分安卓端ncnn模型推理输出数据存在大量-nan的问题 Issue #3607 Tencent/ncnn (github.com) 问题描述 onnx、ncnn模型在pc端推理输出结果正确且基本一致&#xff0c;在部分安卓设备上使用同一模型和输入的推理输出数据正常&#xff0c;另一部分安…

Redis报错-CROSSSLOT keys in request don‘t hash in the same slot

背景 问题涉及&#xff1a;spring security、spring session、redis 问题描述 springbootspringsecurityspringsessionantd 登录功能的时候&#xff0c;在源码中使用到了redis的rename命令&#xff08;如下图所示&#xff09; 在这里就会报错 CROSSSLOT keys in request d…

基于小波哈尔法(WHM)的一维非线性IVP测试问题的求解(Matlab代码实现)

&#x1f4a5;1 概述 小波哈尔法&#xff08;WHM&#xff09;是一种求解一维非线性初值问题&#xff08;IVP&#xff09;的数值方法。它基于小波分析的思想&#xff0c;通过将原始问题转化为小波空间中的线性问题&#xff0c;然后进行求解。以下是一维非线性IVP测试问题的求解…

MacOS 便笺Stickies数据恢复

在MacOS上&#xff0c;如果便笺数据丢了&#xff1a; 1、可以去时间机器备份的以下目录寻找&#xff0c;之前所有的便笺&#xff0c;都以rtfd文件的形式存在这下面。 最新备份/用户/Frank(这里是你的用户名)/Library/Containers/com.apple.Stickies/Data/Library/Stickies 2…

守护数智未来,开源网安受邀参加2023OWASP北京论坛

2023年7月14日&#xff0c;OWASP中国与网安加社区联合举办的“2023OWASP中国北京安全技术论坛”在北京圆满召开&#xff0c;开源网安受邀参加本次论坛并分享“软件供应链安全治理实践”。 本次“2023OWASP中国北京安全技术论坛”是OWASP中国北京地区年度重要活动之一&#xff…

【Hive实战】Hive的事务表

Hive Transactions 在升级到Hive 3之前&#xff0c;需要把在事务表上Major Compaction。主要是为了合并掉增量文件。更准确地说&#xff0c;自上次Major Compaction以来在其上执行过任何更新/删除/合并语句的任何分区都必须进行另一次Major Compaction。在 Hive 升级到 Hive 3 …

Vue+axios 使用CancelToken多次发送请求取消前面所有正在pendding的请求

需求&#xff1a; 项目中 折线图数据是循环调用的&#xff0c;此时勾选一个设备&#xff0c; 会出现多条线。 原因 折线图数据一进来接口循环在调用&#xff0c;勾选设备时&#xff0c;循环调用的接口有的处于pedding状态 &#xff0c;有的还在加载中&#xff0c;这就导致勾…

【PDFBox】PDFBox操作PDF文档之读取指定页面文本内容、读取所有页面文本内容、根据模板文件生成PDF文档

这篇文章&#xff0c;主要介绍PDFBox操作PDF文档之读取指定页面文本内容、读取所有页面文本内容、根据模板文件生成PDF文档。 目录 一、PDFBox操作文本 1.1、读取所有页面文本内容 1.2、读取指定页面文本内容 1.3、写入文本内容 1.4、替换文本内容 &#xff08;1&#xf…

如何在 Endless OS 上安装 ONLYOFFICE 桌面编辑器

ONLYOFFICE 桌面编辑器是一款基于依据 AGPL v.3 许可进行分发的开源办公套件。使用这款应用&#xff0c;您无需保持网络连接状态即可处理存储在计算机上的文档。本指南会向您介绍&#xff0c;如何在 Endless OS 上安装 ONLYOFFICE 桌面编辑器。 ONLYOFFICE 桌面版是什么 ONLYO…

Spring Boot进阶(55):SpringBoot之集成MongoDB及实战使用 | 超级详细,建议收藏

1. 前言&#x1f525; 前几期我们有介绍Mysql、Redis等数据库介绍及实战演示&#xff0c;对基本的数据存放有很好的共性&#xff0c;但是如果说遇到大面积的xml、Json、bson等格式文档数据存放&#xff0c;以上数据库并非是最优选择&#xff0c;最优选择是Mongodb数据库。 那么…

如何将jar 包下载到自定义maven仓库

下载命令 mvn install:install-file -Dfileartifactid-version.jar -DgroupIdgroupid -DartifactIdartifactid -Dversionversion -Dpackagingjar -DlocalRepositoryPath. -DcreateChecksumtrue参数解释 在上述命令中&#xff0c;需要替换以下参数&#xff1a; artifactid-vers…

HTTP原理解析-超详细

作者&#xff1a;20岁爱吃必胜客&#xff08;坤制作人&#xff09;&#xff0c;近十年开发经验, 跨域学习者&#xff0c;目前于海外某世界知名高校就读计算机相关专业。荣誉&#xff1a;阿里云博客专家认证、腾讯开发者社区优质创作者&#xff0c;在CTF省赛校赛多次取得好成绩。…

《刷题2》场景模拟

目录 1. C语言部分 1.1. 关键字static有什么用途? 1.2. 如何引用一个已经定义过的全局变量? 1.3. 设有以下说明和定义&#xff1a; 1.4. 写出float x 与“零值”比较的if语句 1.5. 对于一个频繁使用的短小函数,在C语言中应用什么实现,在C中应用什么实现? 1.6. 什么是…

vue3+vue-router4:报错Uncaught (in promise) Error: Invalid navigation guard

报错图示&#xff1a; Error: Invalid navigation guard Uncaught (in promise) Error: Invalid navigation guard 错误影响描述&#xff1a; 配置开发、测试、生产时候&#xff0c;因为是公众号&#xff0c;所以想在开发环境下免鉴权&#xff0c;不走微信获取openid接口&a…

potplayer放大画面,画面拖拽。备份

放大画面&#xff1a; 按住alt和鼠标左键&#xff0c;就可以拖动放大后的画面了 窗口化示图

Alluxio初见

Alluxio学习指南 在当今的大数据时代,数据处理和存储的需求变得越来越庞大和复杂。为了解决这些挑战,Alluxio作为一个开源分布式虚拟文件系统应运而生。本篇博客将向您介绍Alluxio的基本概念、架构和使用方法,帮助您更好地理解和应用Alluxio。 Alluxio是什么? Alluxio是…

【DC-DC】APS54083 降压恒流驱动器大功率深度调光 舞台 RGB 汽车照明 台灯驱动芯片

产品描述 APS54083 是一款 PWM 工作模式,高效率、外围简单、外置功率 MOS 管&#xff0c;适用于 5-220V 输入高精度降压 LED 恒流驱动芯片。输出最大功率150W最大电流 6A。APS54083 可实现线性调光和 PWM 调光&#xff0c;线性调光脚有效电压范围 0.5-2.5V.PWM 调光频率范围 1…

学习babylon.js --- [3] 开启https

babylonjs提供WebVR功能&#xff0c;但是使用这个功能得用https&#xff0c;本文讲述如何使用自签名证书来开启https&#xff0c;基于第二篇文章中搭建的工程。 一 生成自签名证书 首先要安装openssl&#xff0c;这个去网上搜下就行了。安装完之后在终端下输入openssl回车可以…