13 JS04——运算符

news2024/12/26 10:05:10

目标:
1、运算符
2、算数运算符
3、递增和递减运算符
4、比较运算符
5、逻辑运算符
6、赋值运算符
7、运算符优先级

一、运算符

1、概念

运算符(operator)也被称作操作符,是用于实现赋值、比较和执行算数运算等功能的符号。

2、种类

· 算数运算符
· 递增和递减运算符
· 比较运算符
· 逻辑运算符
· 赋值运算符

二、算数运算符

1、概念

算数运算使用的符号,用于执行两个变量或值的算数运算
在这里插入图片描述

2、浮点数的精度问题

浮点数值的最高精度是17位小数,但在进行算数计算时其精确度远远不如整数。
在这里插入图片描述
所以:不要直接判断两个浮点数是否相等!

3、几个问题

(1)如何判断一个数能否被整除?

它的余数是0就说明这个数能被整除,这就是%取余运算符的主要用途

(2)1 + 2 * 3 结果是?

结果是7,注意算数运算符是有优先级的,先乘除,后加减,有小括号先算小括号里面的

4、表达式和返回值

表达式:是由数字、运算符、变量等以能求得数值的有意义排列方法所得的组合
简单理解:是由数字、运算符、变量等组成的式子

表达式最终都会有一个结果,返回给我们,我们成为返回值

三、递增和递减运算符

如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减(- -)运算符来完成

在JavaScript中,递增(++)和递减(–)既可以放在变量前面,也可以放在变量后面。放在变量前面时我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符。

注意:递增和递减运算符必须和变量配合使用。

1、递增运算符

(1)前置递增运算符

++num前置递增,就是自加1,类似于num=num+1,但是++num写起来更简单。

使用口诀:先自加,后返回值

(2)后置递增运算符

num++后置递增,就是自加1,类似于num=num+1,但是num++写起来更简单。

使用口诀:先返回原值,后自加

(3)小结

· 前置递增和后置递增运算符可以简化代码的编写,让变量的值+1比以前写法更简单
· 单独使用时,运行结果相同
· 与其他代码联用时,执行结果会不同
· 后置:先原值运算,后自加(先人后己)
· 前置:先自加,后运算(先已后人)
· 开发时,大多使用后置递增减,并且代码独占一行,例如:num++;或者num–

2、递减运算符

同理

四、比较运算符

1、概念

比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true/false)作为比较运算的结果。
在这里插入图片描述

37 == '37' //true

2、等号小结

在这里插入图片描述
在这里插入图片描述
前者:true
后者:false

五、逻辑运算符

1、概述

逻辑运算符时用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断。
在这里插入图片描述

2、逻辑与&&

两边都是true才返回true,否则返回false
在这里插入图片描述

3、逻辑或||

两边都为false才返回false,否则都为true
在这里插入图片描述

4、逻辑非!

逻辑非(!)也叫做取反符,用来取一个布尔值相反的值,如true的相反值是false

5、短路运算(逻辑中断)*(需要理解记忆)

短路运算原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值。

如果有空的或者否定的为假,其余是真的。0  ' '  null  undefined  NaN 

(1)逻辑与

语法:表达式1&&表达式2
如果第一个表达式的值为真,则返回表达式2
如果第一个表达式的值为假,则返回表达式1

(2)逻辑或

语法:表达式11表达式2
如果第一个表达式的值为真,则返回表达式1
如果第一个表达式的值为假,则返回表达式2
在这里插入图片描述在这里插入图片描述

六、赋值运算符

概念:用来把数据赋值给变量的运算符
请添加图片描述

七、运算符优先级

在这里插入图片描述
· 一元运算符里面的逻辑非优先级很高
· 逻辑与比逻辑或优先级高

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

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

相关文章

解决java普通项目读取不到resouces目录下资源文件的办法

现象如下: 可以看到resources目录已经在idea中标记成了资源目录resources root,而且target/classes目录下也编译出了resources目录下的pci.properties文件,换句话说:java在编译时是读取到了resources下的文件的。 可是为什么new F…

App性能优化方案——布局层级太多怎么优化?

作者:小海编码日记 View整体布局是通过深度优先的方式来进行组织的,整体形似一颗树,所以优化布局层级主要通过三个方向来实施: 降低布局深度:使用merge标签或者布局层级优化等手段来减少View树的深度;布局…

代码随想录算法训练营第四十三天|1049. 最后一块石头的重量 II 、494. 目标和、474.一和零

文章目录 背包问题题型1049. 最后一块石头的重量 II494. 目标和474.一和零 背包问题题型 等和子集 —0-1背包能否装满最后一块石头—0-1背包尽量装满目标和—0-1背包装满,且有多少种装的方式(组合问题) 1049. 最后一块石头的重量 II 题目链…

网页爬虫之WebPack模块化解密(JS逆向)

WebPack打包: webpack是一个基于模块化的打包(构建)工具, 它把一切都视作模块。 概念: webpack是 JavaScript 应用程序的模块打包器,可以把开发中的所有资源(图片、js文件、css文件等)都看成模块,通过loade…

Java中Lambda表达式(面向初学者)

目录 一、Lambda表达式是什么?什么场景下使用Lambda? 1.Lambda 表达式是什么 2.函数式接口是什么 第二章、怎么用Lambda 1.必须有一个函数式接口 2.省略规则 3.Lambda经常用来和匿名内部类比较 第三章、具体使用场景举例() …

水果店(库)管理系统 —— 实现了管理员模式与顾客模式 JAVA

水果店(库)管理系统 1.前言:2.功能简介及部分测试视频:3.本管理系统的构建原理(简介):(1).如何跳转页面:(2).如何让控制台能输出彩色字体:(3).如何稳定存储数据:(4).如何…

误操作清空了回收站文件如何找到文件

我们在删除文件的时候,文件都是先跑到回收站里的,这样的防止我们出现误删的情况,但往往也会出现我们要恢复删除的文件却误操作清空了回收站的情况,那么误操作清空了回收站如何找到呢,下面小编给大家分享误操作清空了回…

window 10 安装node.js时遇到2502 2503错误(已解决)

node安装失败2503的解决办法:1、在WIN搜索框搜索powershell并右击;2、点击使用管理员身份运行powershell命令行工具;3、输入“msiexec /package node”;4、打开安装包,根据提示安装即可。 本文操作环境:Win…

9.Join的应用

1.reduceJoin的应用 案例:将两个表合并成一个新的表 需求分析:通过将关联条件作为Map输出的key(此处指pid),将两表满足Join条件的数据并携带数据所来源的文件信息,发往同一个ReduceTask,在Redu…

汇编小程序解析--3D立方体旋转

汇编小程序解析–3D立方体旋转,源代码如下,是vulture大神于1995年写的,我到现在才基本看懂。 ;本程序由国外的Vulture大哥编写,并公布了源码,这个是他95年的一个作品,可以说是在当时是非常成功的&#xff…

论shell之条件语句-if语句、case语句

目录 一:条件测试 1.文件测试 2.常见的测试操作符 3.整数值比较 ​4.字符串比较 ​5. 逻辑测试 二:if语句 1.单分支结构 2.单分支结构实例 3.双分支结构 4.双分支结构实例 5.多分支结构 6.多分支机构实例 7.嵌套if语句实例 三:case语…

2023企业服务的关键词:做强平台底座

作者 | 曾响铃 文 | 响铃说 4月下旬,软件行业相关的大会紧锣密鼓地开了好几场,不仅有政府主办的2023中国国际软件发展大会、中国软件创新发展大会,也有用友、浪潮等服务商举办的品牌活动,让软件业的话题一直保持热度。 以用友为…

十大排序算法简单总结与对比

假设排序均从小到大排序 排序算法工作原理平均时间复杂度最坏时间复杂度空间复杂度是否稳定排序冒泡排序把相邻元素两两比较,若左侧的元素大于右侧的元素,则交换,否则不交换。(每一轮最大的会跑到最右边)O(&#xff0…

VGA协议实践

文章目录 前言一、VGA接口定义与传输原理1、VGA接口定义2、传输原理3、不同分辨率对应不同参数 二、Verilog编程1、VGA显示彩色条纹2、VGA显示字符3、输出一幅彩色图像4、Quartus操作1、添加PLL核2、添加ROM核 三、全部代码四、总结五、参考资料 前言 VGA的全称是Video Graphi…

VBA最基础的趣味速成练习--VBA资料

很多朋友想学VBA,但是苦于无处入手,我特意花了几天时间,做了一个VBA速成练习表格 能让你快速上手VBA,感受到VBA的神奇之处,相信我们日常使用表格的朋友会非常喜欢它的, 下面是我们的表格界面,…

选择营销自动化软件时的3个常见错误

做出投资营销自动化软件的决定是一个重大决定,可能很难知道从哪里开始,尤其是当市场上有这么多选择时。选择正确的自动化软件可能是拥有良好的营销运营与拥有低效营销团队之间的区别。在这篇博文中,我们将讨论人们在选择营销自动化软件时最常…

Flink之TaskManager内存解析

一、CK失败 Flink任务的checkpoint操作失败大致分为两种情况,ck decline和ck expire: (1)ck decline 发生ck decline情况时,我们可以通过查看JobManager.log或TaskManager.log查明具体原因。其中有一种特殊情况为ck cancel&…

排序 - 选择排序(Selection sort)

文章目录 选择排序介绍选择排序实现选择排序的时间复杂度和稳定性选择排序时间复杂度选择排序稳定性 代码实现核心&总结 每日一道算法,提高脑力。第四天,选择排序。 选择排序介绍 它的基本思想是: 首先在未排序的数列中找到最小(or最大)元素&#…

Shiro详解(超全面)

目录: 一、简介二、Shiro的整体架构1、Subject2、Security Manager3、Cryptography4、Authenticator5、Authorizer6、realm7、sessionManager8、SessionDAO9、CacheManager 三、入门案例四、认证流程1、认证流程2、常见异常 五、授权流程1、授权流程2、自定义realm实现授权 六、…

JavaScript日期库之date-fn.js

用官网的话来说,date-fn.js 就是一个现代 JavaScript 日期实用程序库,date-fns 为在浏览器和 Node.js 中操作 JavaScript 日期提供了最全面、但最简单和一致的工具集。那实际用起来像它说的那么神奇呢,下面就一起来看看吧。 安装 安装的话就…