当前位置: 首页 > 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…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...