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

【Javascript保姆级教程】运算符

文章目录

  • 前言
  • 一、运算符是什么
  • 二、赋值运算符
    • 2.1 如何使用赋值运算符
    • 2.2 示例代码1
    • 2.3 示例代码2
  • 三、自增运算符
    • 3.1 ++运算符
    • 3.2 示例代码1
    • 3.3 示例代码2
  • 四、比较运算符
    • 4.1 常见的运算符
    • 4.2 如何使用
    • 4.3 示例代码1
    • 4.4 示例代码2
  • 五、逻辑运算符
    • 逻辑运算符列举
  • 六、运算符优先级
    • 6.1 运算符优先级列举
    • 6.2 示例代码1:运算符优先级
    • 6.3 示例代码2:使用括号明确指定优先级
  • 总结


前言

JavaScript是一种广泛应用的编程语言,它的基础知识对于编写前端和后端应用程序都至关重要。本教程将带您深入了解JavaScript中的五个关键概念:赋值运算符,自增运算符,比较运算符,逻辑运算符和运算符优先级。这些概念是编写任何JavaScript程序的基石。


一、运算符是什么

当我们编写计算机程序时,经常需要对数据进行各种操作,就像在数学中使用加号(+)或减号(-)一样。JavaScript的运算符就是一些特殊符号或关键字,它们帮助我们对数据进行各种操作,比如加法、减法、比较、判断等等。

举个例子,想象你有两个数字,想把它们相加。在JavaScript中,你可以使用加号运算符(+)来完成这个操作,就像这样:

let num1 = 5;
let num2 = 3;
let sum = num1 + num2; // 这里的+就是运算符,它把num1和num2相加,结果存储在sum中。

在这里插入图片描述

所以,运算符就是编程中用来执行各种数学和逻辑操作的特殊符号或关键字。它们让我们可以对数据进行处理和计算,是编程的基本工具之一。

二、赋值运算符

赋值运算符用于将一个值赋给一个变量。以下是常见的赋值运算符:

=:将右边的值赋给左边的变量。

2.1 如何使用赋值运算符

let x = 10; // 将10赋给变量x

在这里插入图片描述

2.2 示例代码1

使用=赋值变量

let name = "Alice";
let age = 30;

在这里插入图片描述

2.3 示例代码2

更新变量的值

let count = 5;
count = count + 1; // 将count的值增加1

在这里插入图片描述

三、自增运算符

自增运算符用于增加变量的值。以下是常见的自增运算符:

3.1 ++运算符

作用:将变量的值增加1。

如何使用

let x = 5;
x++; // x的值现在为6

在这里插入图片描述

3.2 示例代码1

使用自增运算符

let count = 0;
count++; // count的值增加1

在这里插入图片描述

3.3 示例代码2

自增运算符的前缀和后缀形式

let a = 5;
let b = 5;let x = a++; // 先赋值再增加,x=5, a=6
let y = ++b; // 先增加再赋值,y=6, b=6

在这里插入图片描述

四、比较运算符

4.1 常见的运算符

比较运算符用于比较两个值并返回一个布尔值(true或false)。以下是常见的比较运算符:

==:等于
!=:不等于
>:大于
<:小于
>=:大于等于
<=:小于等于

4.2 如何使用

let a = 5;
let b = 10;
let result = a > b; // result的值为false,因为a不大于b

在这里插入图片描述

4.3 示例代码1

使用比较运算符

let age = 25;
if (age >= 18) {console.log("成年人");
} else {console.log("未成年人");
}

在这里插入图片描述

4.4 示例代码2

比较字符串

let str1 = "apple";
let str2 = "banana";
let isEqual = str1 == str2; // isEqual的值为false

在这里插入图片描述

五、逻辑运算符

逻辑运算符列举

逻辑运算符用于组合多个条件,并返回一个布尔值。以下是常见的逻辑运算符:

&&:逻辑与(AND||:逻辑或(OR!:逻辑非(NOT

当在JavaScript中使用这些符号时,它们有以下含义:

&&(逻辑与):这个符号用于连接两个条件,如果两个条件都为真(true),那么整个表达式就为真。可以将它想象成一种要求两个条件同时满足才能执行某个操作的情况。比如:

||(逻辑或):这个符号也用于连接两个条件,但只要其中一个条件为真,整个表达式就为真。可以将它想象成一种只要满足其中一个条件就能执行某个操作的情况。比如:

!(逻辑非):这个符号用于对一个条件取反,如果条件本来为真,取反后就变为假;如果条件本来为假,取反后就变为真。可以将它想象成一种否定某个条件的情况。比如:

这些逻辑运算符在编写JavaScript代码时非常有用,它们帮助我们根据条件来做出不同的决策和执行不同的操作。

六、运算符优先级

6.1 运算符优先级列举

JavaScript中的运算符有不同的优先级,这会影响表达式的求值顺序。以下是一些常见运算符的优先级:

():括号具有最高优先级,用于明确指定运算顺序。
++--:自增和自减运算符的优先级较高。
*/%:乘法、除法和取余运算的优先级相等,比加法和减法高。
+-:加法和减法的优先级相等。
><>=<=:比较运算符的优先级相等。
==!=:等于和不等于运算符的优先级相等。
&&:逻辑与运算符的优先级高于逻辑或运算符。
||:逻辑或运算符的优先级较低。

6.2 示例代码1:运算符优先级

let result = 2 + 3 * 4; // 结果为14,因为乘法优先级高于加法

在这里插入图片描述

6.3 示例代码2:使用括号明确指定优先级

let result = (2 + 3) * 4; // 结果为20,因为括号改变了运算顺序

在这里插入图片描述


总结

本教程介绍了JavaScript中的五个重要概念:赋值运算符,自增运算符,比较运算符,逻辑运算符和运算符优先级。这些概念是编写JavaScript代码的基础,对于理解和掌握JavaScript非常重要。通过学习和实践,您将能够更加熟练地使用这些运算符来创建功能强大的JavaScript程序。不断练习并尝试不同的示例,以提高您的编程技能。

相关文章:

【Javascript保姆级教程】运算符

文章目录 前言一、运算符是什么二、赋值运算符2.1 如何使用赋值运算符2.2 示例代码12.3 示例代码2 三、自增运算符3.1 运算符3.2 示例代码13.3 示例代码2 四、比较运算符4.1 常见的运算符4.2 如何使用4.3 示例代码14.4 示例代码2 五、逻辑运算符逻辑运算符列举 六、运算符优先级…...

图论与网络优化

2.概念与计算 2.1 图的定义 2.1.1 定义 图(graph) G G G 是一个有序的三元组&#xff0c;记作 G < V ( G ) , E ( G ) , ψ ( G ) > G<V(G),E(G),\psi (G)> G<V(G),E(G),ψ(G)>。 V ( G ) V(G) V(G) 是顶点集。 E ( G ) E(G) E(G) 是边集。 ψ ( G ) \…...

【论文复现】基于多模态深度学习方法的单细胞多组学数据聚类(【生物信息学】实验二:多组学数据融合:scMDC)

目录 一、实验介绍 1. 论文&#xff1a;基于多模态深度学习方法的单细胞多组学数据聚类 Abstract 2. Github链接 二、实验环境 0. 作者要求 1. 环境复现 实验一 实验二&#xff08;本实验&#xff09; 2. 库版本介绍 实验一 实验二 3. IDE 三、实验内容 1. 用法…...

mysql按指定字符截取

1、使用SUBSTRING函数进行截取 语法&#xff1a;str是要截取的字符串&#xff0c;pos是起始位置&#xff0c;len是要截取的长度 SUBSTRING(str, pos, len)例子 SELECT SUBSTRING(Hello, World!, 1, 5);返回"Hello"。其中&#xff0c;起始位置为1&#xff0c;截取的…...

搜索引擎-在URL地址栏输入信息,不跳转

在URL地址栏输入信息&#xff0c;不跳转 原因解决待续 原因 因为没有使用某个搜索引擎&#xff0c;无法定位到资源 解决 先打开百度或搜狗其他引擎&#xff0c;在输入内容&#xff0c;跳转成功 待续 ————————————————————— 以上就是今日博客的全部内容…...

10种新型网络安全威胁和攻击手法

2023年&#xff0c;网络威胁领域呈现出一些新的发展趋势&#xff0c;攻击类型趋于多样化&#xff0c;例如&#xff1a;从MOVEit攻击可以看出勒索攻击者开始抛弃基于加密的勒索软件&#xff0c;转向窃取数据进行勒索&#xff1b;同时&#xff0c;攻击者们还减少了对传统恶意软件…...

Elasticsearch:painless script 语法基础和实战

摘要&#xff1a;Elasticsearch&#xff0c;Java script的作用 script是Elasticsearch的拓展功能&#xff0c;通过定制的表达式实现已经预设好的API无法完成的个性化需求&#xff0c;比如完成以下操作 字段再加工/统计输出字段之间逻辑运算定义查询得分的计算公式定义特殊过…...

《数据结构、算法与应用C++语言描述》使用C++语言实现数组双端队列

《数据结构、算法与应用C语言描述》使用C语言实现数组双端队列 定义 队列的定义 队列&#xff08;queue&#xff09;是一个线性表&#xff0c;其插入和删除操作分别在表的不同端进行。插入元素的那一端称为队尾&#xff08;back或rear&#xff09;&#xff0c;删除元素的那一…...

TikTok Shop新结算政策:卖家选择权加强,电商市场蓄势待发

据悉&#xff0c;从2023年11月1日开始&#xff0c;TikTok Shop将根据卖家的店铺表现来应用3种不同类型的结算期&#xff0c;其中&#xff0c;标准结算期&#xff1a;资金交收期为8个日历日&#xff1b;快速结算期&#xff1a;资金交收期为3个日历日&#xff1b;延长结算期&…...

asp.net特色商品购物网站系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net特色商品购物网站系统 是一套完善的web设计管理系统&#xff0c;系统采用mvc模式&#xff08;BLLDALENTITY&#xff09;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 vs2010&#xff0c;数据库为sqlserver2008&a…...

解决一则诡异的javascript函数不执行的问题

有个vue 音乐播放器项目&#xff0c;由于之前腾讯的搜索接口没法用了&#xff0c;于是改成了别家的搜索接口。 但是由于返回数据结构不一样&#xff0c;代码重构的工作量还是挺大的&#xff1a;包括数据请求&#xff0c;数据处理&#xff0c;dom渲染&#xff0c;处理逻辑都进行…...

汽车安全的未来:毫米波雷达在碰撞避免系统中的角色

随着科技的飞速发展&#xff0c;汽车安全系统变得愈加智能化&#xff0c;而毫米波雷达技术正是这一领域的亮点之一。本文将深入探讨毫米波雷达在汽车碰撞避免系统中的关键角色&#xff0c;以及其对未来汽车安全的影响。 随着城市交通的拥堵和驾驶环境的变化&#xff0c;汽车安全…...

体感互动游戏研发虚拟场景3D漫游

体感互动游戏是一种结合虚拟现实&#xff08;VR&#xff09;或增强现实&#xff08;AR&#xff09;技术的游戏&#xff0c;允许玩家以身体动作和姿势来与游戏互动。这种类型的游戏通常需要特殊的硬件设备&#xff0c;例如体感控制器、摄像头或传感器&#xff0c;以捕捉玩家的动…...

微信小程序获取手机号(2023年10月 python版)[无需订阅]

技术栈&#xff1a; 1. 微信开发者工具中的调试基础库版本&#xff1a;3.1.2。 2. 后台&#xff1a;django。 步骤&#xff1a; 1. 首先在后台django项目的定时任务中增加一个下载access_token函数&#xff0c;并把得到的access_token保存在数据库中&#xff08;其实随便哪里…...

Linux下设置网关以及网络相关命令

一、临时设置网关 查看当前路由表&#xff1a;route -n设置网关&#xff1a;route add default gw <路由器的网关IP> 注意&#xff1a;系统重启时&#xff0c;这些更改将不生效 二、永久设置网关 列出可用网络连接&#xff1a;nmcli connection show设置网关&#x…...

linux三剑客~sed命令的使用

1.工作原理&#xff1a; sed是一种流编辑器&#xff0c;它是文本处理中非常有用的工具 能够完美的配合正则表达式使用&#xff0c;处理时&#xff0c;把当前处理的行存储在临时缓冲区中&#xff0c;称为模式空间&#xff0c;接着用sed命令处理缓冲区中的内容 处理完成后&…...

virtualBox虚拟机安装多个+主机访问虚拟机+虚拟机访问外网配置

目的&#xff1a;本机安装3个虚拟机 一、虚拟机安装&#xff1a;Oracle VM VirtualBox (https://www.virtualbox.org/)源代码可下载&#xff0c;且免费使用 1、https://www.virtualbox.org/ 进入网站中Download 模块选择与自己电脑系统相应的下载包下载即可 如果安装过程报错如…...

正点原子嵌入式linux驱动开发——Linux按键输入

在前几篇笔记之中都是使用的GPIO输出功能&#xff0c;还没有用过GPIO输入功能&#xff0c;本章就来学习一下如果在Linux下编写GPIO输入驱动程序。正点原子STM32MP1开发板上有三个按键&#xff0c;就使用这些按键来完成GPIO输入驱动程序&#xff0c;同时利用原子操作来对按键值进…...

java--强制类型转换

类型范围大的数据或者变量&#xff0c;直接赋值给小范围的变量&#xff0c;会报错 1.强制类型转换 强行将类型范围大的变量、数据赋值给类型范围小的变量 2.强制类型转换在计算机中的执行原理 解释说明1&#xff1a;a是int类型有8个字节32位&#xff0c;然后在执行下一行代码…...

java后端调用接口Basic auth认证

该方法接收一个JSON字符串参数phoneNum 内容&#xff1a; {"phone":"13712312312"} 然后解析参数中的手机号&#xff0c;作为data去调用URL接口&#xff0c;接收接口返回的复合JSON并解析&#xff0c;拿到想要的数据public String queryUserResumeURLIn…...

App爬虫之强大的Airtest的操作总结

App爬虫之强大的Airtest的操作总结 App爬虫之强大的Airtest的操作总结 # Python使用该框架需要安装的依赖库 pip install airtest pip install poco pip install pocouifrom airtest.core.api import * from airtest.cli.parser import cli_setup from poco.drivers.android.…...

MODBUS-TCP转MODBUS-RTU通信应用(S7-1200和串口服务器通信)

在学习本博客之前,大家需要熟悉MODBUS-TCP和MODBUS-RTU通信,这2个通信的编程应用,大家可以查看下面文章链接: MODBUS-RTU通信 MODBUS-RTU通信协议功能码+数据帧解读(博途PLC梯形图代码)-CSDN博客MODBUS通信详细代码编写,请查看下面相关链接,这篇博客主要和大家介绍MODB…...

开源贡献难吗?

本文整理自字节跳动 Flink SQL 技术负责人李本超在 CommunityOverCode Asia 2023 上的 Keynote 演讲&#xff0c;李本超根据自己在开源社区的贡献经历&#xff0c;基于他在贡献开源社区过程中的一些小故事和思考&#xff0c;如何克服困难&#xff0c;在开源社区取得突破&#x…...

seata的TCC模式分析

TCC是 Try- Confirm-Cancel 这3个名词的首字母简称&#xff0c;是一个2阶段提交的变体思路。 Try&#xff1a;对资源的检查和预留&#xff1b; Confirm: 确认对预留资源的消耗&#xff0c;执行业务操作&#xff1b; Cancel&#xff1a;预留资源的释放&#xff1b; TCC的事务…...

常用linux命令【主要用于日志查询,目录切换】

Xshell设置登录 &#xff1a;主机&#xff0c;端口号 用户身份验证&#xff1a;账号/密码登录脚本&#xff1a;等待-[hcuserserver02 ]$ 发送-cd /data/logs/pl-capital-processer-server/$(date “%Y-%m-%d”) 下方-添加按钮/编辑 发送文本&#xff0c;追加 grep --color de…...

Python学习基础笔记七十六——Python装饰器2

装饰器&#xff0c;英文名字decorator。 我们开发Python代码的时候&#xff0c;经常碰到装饰器。 通常被装饰后的函数&#xff0c;会在原来的函数的基础上&#xff0c;增加一些功能。 通常装饰器本事也是一个函数&#xff0c;那么装饰器是怎么装饰另外一个函数的呢&#xff1f…...

生产环境解决用户登录问题的实践

目录 1 前言2 问题提出3 问题分析和解决4 技术分析和改进5 结语 1 前言 在开发管理软件平台为美术馆时&#xff0c;我们致力于提供一个多系统集成平台&#xff0c;其中包括艺术品管理、志愿者管理和数字资产管理等子系统。为了确保用户享有流畅的体验&#xff0c;我们采用了一…...

通讯协议学习之路:QSPI协议理论

通讯协议之路主要分为两部分&#xff0c;第一部分从理论上面讲解各类协议的通讯原理以及通讯格式&#xff0c;第二部分从具体运用上讲解各类通讯协议的具体应用方法。 后续文章会同时发表在个人博客(jason1016.club)、CSDN&#xff1b;视频会发布在bilibili(UID:399951374) 一、…...

pip安装修改镜像源

使用pip安装报错时&#xff0c;例如 raise ReadTimeoutError(self._pool, None, “Read timed out.”) pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host‘download.pytorch.org’, port443): Read timed out 可以选择国内的镜像源&#xff0c;如下…...

QCC51XX-QCC30XX系列开发教程(实战篇) 之 12.4-空间音频手机侧和耳机侧接口设计时序图

查看全部教程开发请点击:全网最全-QCC51xx-QCC30xx(TWS)系列从入门到精通开发教程汇总(持续更新中) ==================================================================== 版权归作者所有,未经允许,请勿转载。 ==========================================...