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

别再只数步数了!深入聊聊ADXL345计步算法里的‘动态阈值’与‘最活跃轴’

别再只数步数了&#xff01;深入聊聊ADXL345计步算法里的‘动态阈值’与‘最活跃轴’ 当你盯着智能手环上的步数统计时&#xff0c;有没有想过这串数字背后藏着怎样的算法智慧&#xff1f;ADXL345作为一款经典的三轴加速度传感器&#xff0c;其计步算法远非简单的阈值比较那么简…...

Clawdbot惊艳效果:Qwen3-32B在医疗问诊摘要与术语标准化输出实测

Clawdbot惊艳效果&#xff1a;Qwen3-32B在医疗问诊摘要与术语标准化输出实测 1. 测试背景与平台介绍 Clawdbot是一个统一的AI代理网关与管理平台&#xff0c;为开发者提供直观的界面来构建、部署和监控自主AI代理。这个平台集成了聊天界面、多模型支持和强大的扩展系统&#…...

终极指南:用OpenCore Legacy Patcher让旧Mac焕发新生的5个简单步骤

终极指南&#xff1a;用OpenCore Legacy Patcher让旧Mac焕发新生的5个简单步骤 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为手中的旧款Mac无法…...

深入OpenHarmony NAPI引擎:从‘@ohos.hilog’导入到so库加载的底层链路剖析

深入OpenHarmony NAPI引擎&#xff1a;从‘ohos.hilog’导入到so库加载的底层链路剖析 当开发者在OpenHarmony应用中写下import hilog from ohos.hilog时&#xff0c;背后隐藏着一套精密的系统级协作机制。这条看似简单的语句&#xff0c;实际上触发了从JavaScript语法解析到原…...

有线/无线(空口)抓包过程及其分析

一、如何判断该抓有线包&#xff0c;还是无线包层级问题类型抓包位置L1/L2&#xff08;无线&#xff09;连不上、掉线、弱信号无线抓包L2&#xff08;有线&#xff09;VLAN错误有线抓包L3&#xff08;IP&#xff09;DHCP失败有线抓包L4&#xff08;传输&#xff09;丢包、重传有…...

SEO_五个立竿见影的页面SEO优化技巧指南

SEO优化技巧&#xff1a;快速提升网站页面排名的五个有效方法 在当前竞争激烈的互联网环境中&#xff0c;网站的SEO优化是至关重要的。无论是新建的网站还是已有网站&#xff0c;都需要通过一系列的SEO优化技巧来提升其在搜索引擎上的排名。下面&#xff0c;我们将分享五个立竿…...

本地Cookie管理工具:安全导出与高效应用指南

本地Cookie管理工具&#xff1a;安全导出与高效应用指南 【免费下载链接】Get-cookies.txt-LOCALLY Get cookies.txt, NEVER send information outside. 项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY 在当今数字化环境中&#xff0c;Cookie作为…...

MATLAB实战:如何用三种噪声干扰模拟器提升脉冲雷达抗干扰能力

MATLAB实战&#xff1a;三种噪声干扰模拟器在脉冲雷达抗干扰测试中的应用 雷达系统在现代电子战中扮演着关键角色&#xff0c;而抗干扰能力是评估雷达性能的重要指标。本文将深入探讨如何利用MATLAB构建射频噪声、调幅噪声和调频噪声三种干扰模拟器&#xff0c;通过完整的代码实…...

Go语言中的Interface:面向接口编程

Go语言中的Interface&#xff1a;面向接口编程 1. Interface的基本概念 Interface是Go语言中用于定义行为的一种类型&#xff0c;它指定了一组方法签名&#xff0c;但不提供具体实现。Interface是Go语言实现多态和解耦的核心机制&#xff0c;也是面向接口编程的基础。 Go语言的…...

商业应用(12)电影院零售票务系统开发—东方仙盟练气期

未来之窗开源收银台生态未来之窗开源收银台生态&#xff1a;让中小微企业告别重复开发&#xff0c;普惠式接入多场景收银能力 在数字化转型的浪潮中&#xff0c;中小微企业的痛点往往藏在 “重复造轮子” 里 —— 便利店需要收银台、餐饮店需要收银台、游乐场需要带押金管理的收…...