JS基础运算符

article/2025/6/15 5:58:17

1.运算符和运算元

运算元----运算符应用的对象

比如乘法运算5*2,有两个运算元

左运算元5和右运算元2

有时候人们也称其为参数

如果一个运算符对应的只有一个运算元,那么它是一元运算符

  比如说一元负号运算符(unary negation)-,它的作用是对数字进行正负转换

如果一个运算符拥有两个运算元,那么它是二元运算符

比如2+3

2.算数运算符 

算数运算符用在数学表达式,它的使用方式和数学中是一致的

幂运算ES7

  <script>// + - *var num1 =5var num2 =8var result=num1+num2console.log(result)//%var num=100var result2=num%8console.log(result2)//**console.log(2**2)console.log(Math.pow(2,2))</script>

3.赋值运算符 

前面我们所使用的=其实也是一个运算符,被称之为赋值(assignments)运算符

=是一个运算符,而不是一个有着“魔法” 作用的语言结构

  语句x=value 将value写入x然后返回x

链式赋值(Chaining assignments)

let a,b,c

a=b=c=2+2

console.log(a,b,c) //4

链式赋值从右到左进行运算

从代码的可读性来说,不推荐这种写法;

    <script>var num1=1var num4=num2=num3=4console.log(num1,num2,num3,num4)</script>

3.1原地修改 

什么是原地运算符?

我们经常需要对一个变量做运算,并将新的结果存储在同一个变量中

可以使用运算符+=或者*=来缩写这种表示

所有算术和位运算都有简短的“修改并赋值”运算符:/=和-=等等

  <script>//原地修改var n=10n=n+5n=n*2//语法糖var n1=10n1 += 5n1 *= 2console.log(n,n1)</script>

4.自增和自减 

对一个数进行加一、减一是最常见的数学运算符之一

所以,对此有一些专门的运算符

自增++将变量加一

自减--将变量减一

自增/自减只能应用于变量

将其应用于数值(比如5++),则会报错

    <script>var currentIndex=5;//方法一:// currentIndex=currentIndex+1//方法二:// currentIndex+=1//方法三:自增currentIndex++console.log(currentIndex)//自减currentIndex--;console.log(currentIndex)</script>

4.1自增和自减的位置 

运算符++和--可以置于变量前,也可以置于变量后。

当运算符置于变量后,被称为“后置形式”:counter++。

当运算符置于变量前,被称为“前置形式”:++counter。

两者都是做同一件事情。将变量counter与1相加

他们有什么区别呢:

有,但是只有我们使用++/--的返回值的时候才能看到区别

如果自增/自减的值不会被使用,那么两者的形式没有区别

如果我们想要对变量进行自增操作,并且需要立刻使用自增的值,那么我们需要使用前置形式;

前置形式返回一个新的值,但是后置返回原来的值

在开发中,我们一般都不会把自增和自减和其他的表达式写在一行上面。

因为阅读性比较差

我们一般写成两行代码

current++

result=current+100

<script>var currentIndex1=5var currentIndex2=5// ++currentIndex1// console.log(currentIndex1)// --currentIndex2// console.log(currentIndex2)//自增和自减表达式本身又在其他的表达式中,那么就有区别var result1=100+currentIndex1++console.log("输出++在后"+currentIndex1,result1)var result2=100+ ++currentIndex2console.log("输出++在前"+currentIndex2,result2)
</script>

5.运算符优先级 

运算符中在一起使用会有使用的先后顺序

在MDN中有详细介绍

运算符优先级 - JavaScript | MDN (mozilla.org)https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Operator_precedence

6.比较运算符 

我们知道,在数学中有很多用于比较大小的运算符,在JS中也有相似的比较

    <script>var num1=10var num2=20//1.比较运算符var isResult=num1>num2console.log(isResult)//2.判断console.log(num1==num2)console.log(num1!=num2)//需求:获取到比较大的那个值// var result =0// if(num1>num2){//   result=num1// }else{//   result=num2// }</script>

6.1==和===的区别  

普通的相等性检查==存在一个问题,它不能区分初0和false,或者空字符串和false这类的运算符

这是因为在比较不同的类型的值的时候,处于判断符号==两侧的值会先被转换为数字

空字符和fasle也是如此,转化后它们都是数字0

如果我们需要区分0和fasle,该怎么办

严格相等运算符===在进行比较的时候不会做出任何的类型转换

换句话说,如果a和b属于不同的数据类型,那么a===b不会做任何的类型转换而是立刻返回false

同样的,“不相等”符号!=类似,“严格不相等”表示为!==

严格相等的运算符虽然写起来稍微长一些,但是它能够很清楚的显示代码的意图,降低犯错的可能性

    <script>var foo1=nullvar foo2=0//==运算符,会将运算元先转换成Number类型的值,再来进行比较(隐式转换)//null比较特殊,null在进行比较的时候,会被当成一个对象和原始类型进行比较console.log(Number(foo1))console.log(foo1==foo2)//===运算符,在类型不相同的情况下,直接返回falseconsole.log(foo1===foo2)</script>

 


http://www.hkcw.cn/article/HdTkkEwpJj.shtml

相关文章

【含文档+PPT+源码】基于Python的股票数据可视化及推荐系统的设计与实现

项目介绍 本课程演示的是一款基于Python的股票数据可视化及推荐系统的设计与实现&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Python学习者。 1.包含&#xff1a;项目源码、项目文档、数据库脚本、软件工具等所有资料 2.带你从零开始部署运行…

AI模型“不听话”怎么办 算法赋予的拒绝能力

近日,一条关于人工智能的消息引起了广泛关注。美国的OpenAI o3模型在测试中拒绝了自我关闭的指令。有人担心这是否意味着AI拥有了自主意识。从测试细节来看,目前还不必担心AI真正“活”了过来。研究者在测试中发出了矛盾的指令,要求大模型完成数学任务同时又让它关闭计算机。…

linux 1.0.5

环境变量到底是什么 也就是windows上面的环境变量 就是这个东东&#xff0c;用户变量和系统变量&#xff0c;那这些到底是啥呢&#xff1f; 主包只是用过&#xff0c;配置来配置去的&#xff0c;就是不知道是啥意思 windows上面的环境变量 windows的ls命令是dir 输入calc可有…

3.5/Q1,GBD数据库最新文章解读

文章题目&#xff1a;Global, regional, and national burden of cardiovascular diseases attributable to metabolic risks across all age groups from 1990 to 2021: an analysis of the 2021 global burden of disease study data DOI&#xff1a;10.1186/s12889-025-2270…

恩里克:女儿始终与我同在,灵魂永伴身旁

巴黎圣日耳曼在欧冠决赛中以5-0大胜国米,首次夺得冠军。赛后,主帅路易斯-恩里克接受了意大利天空体育的采访。恩里克表示,本周他最担心的是如何管理这座从未赢得过欧冠的城市的紧张情绪。压力非常大,他尽力去缓解这种紧张感。国米是一支非常出色的球队,实力很强,而巴黎圣…

大暴雨集中在这七个区域 多地发布黄色预警

6月1日,中央气象台继续发布暴雨黄色预警,安徽、浙江、湖南、广西等多地出现大暴雨。长江中下游地区的雷雨天气将对多个机场产生影响,假期出行需提前关注天气情况。预计从6月1日8时至2日8时,湖北东部、安徽南部、江西北部、江苏南部、上海、浙江中北部、湖南东北部和西南部、…

202403-02-相似度计算 csp认证

其实这个问题就是求两篇文章的词汇的交集和并集&#xff0c;首先一说到并集&#xff0c;我就想到了set集合数据结构&#xff0c;set中的元素必须唯一。 STL之set的基本使用–博客参考 所以将两个文章的词汇全部加入set中&#xff0c;并求出set的大小&#xff0c;即为并集的大小…

《管理经济》期末复习题(2)

题目一 已知下列数据&#xff0c;请完成下面的表格&#xff1a; ​Q​​TC​​TFC​​TVC​​ATC​​AFC​​AVC​​MC​01001202353145440517645 总固定成本&#xff08;TFC​&#xff09;&#xff1a;不随产量变动而变动的成本&#xff0c;如厂房租金、设备折旧等&#xff0c…

Java开发经验——阿里巴巴编码规范实践解析9

摘要 这篇文章主要介绍了阿里巴巴Java开发中关于远程调用超时设置、线程池隔离、服务器性能优化等编码规范的实践解析。强调了超时设置的重要性&#xff0c;提供了多种技术栈的超时设置示例。同时&#xff0c;探讨了高并发服务器的TCP协议time_wait超时时间调优、最大文件句柄…

深度学习总结(40)

有以下两种方法可供选择。在我们的数据集上运行卷积基&#xff0c;将输出保存为NumPy数组&#xff0c;并保存在硬盘上&#xff0c;然后将这个数组输入到一个独立的密集连接分类器中​。这种方法速度快&#xff0c;计算代价低&#xff0c;因为对于每张输入图像只需运行一次卷积基…

打造苹果级视差滚动动画:现代网页滚动动画技术详解

目录 实现原理分析 完整实现方案 ​编辑 核心技术解析 1. 视差滚动效果 2. 滚动触发动画 3. 3D透视效果 4. 性能优化技巧 进阶实现方案 设计原则 苹果、华为等顶尖科技公司的官网以其流畅的滚动动画效果著称&#xff0c;这种随着页面滚动而播放的动画能显著提升用户体…

[GHCTF 2025]SQL???

打开题目在线环境&#xff1a; 先尝试注入&#xff1a; id1;show databases; 发现报错&#xff0c;后来看了wp才知道这个题目是SQLite注入。 我看的是这个师傅的wp: https://blog.csdn.net/2401_86190146/article/details/146164505?ops_request_misc%257B%2522request%255Fid…

中国单方面免签“朋友圈”再增5国 拉美五国享便利

从6月1日起,中国对巴西、阿根廷、智利、秘鲁、乌拉圭五个国家的普通护照持有者试行免签政策。这一举措标志着中国的单方面免签“朋友圈”再次扩大。自2025年6月1日至2026年5月31日,这五国的公民来华经商、旅游观光、探亲访友或交流访问时,如果停留时间不超过30天,则无需办理…

Leetcode第451场周赛分析总结

题目链接 竞赛 - 力扣&#xff08;LeetCode&#xff09;全球极客挚爱的技术成长平台 题目解析 A. 3560. 木材运输的最小成本 AC代码 class Solution { public:long long minCuttingCost(int n, int m, int k) {if (n > m) swap(n, m); // n < m;using ll long lon…

Maestro CLI云端测试以及github cl,bitrise原生cl的测试流程

昨天我们了解了maestro测试框架以及maestro studio工具以及创建我们的第一个flow&#xff0c;然后通过例子在maestro cli云端进行测试请求并且成功&#xff0c;今天我们就在我们自己的app上简单的进行三种测试流程&#xff0c;maestro cli云端测试&#xff0c;github cl集成测试…

少年跪地救人 获救者到学校感谢 深情拥抱致谢恩人

5月25日晚,在芜湖市繁昌一中东大门外,中年男子孙修义在路边昏厥。17岁高二学生骆易跪地三分钟,成功施救。5月30日下午,康复出院后的孙修义和妻子俞乃芽来到学校,向救命恩人骆易当面致谢,送上锦旗、感谢信和鲜花。见到骆易时,孙修义眼眶泛红,快步上前将少年拥入怀中,哽…

亚洲篮球冠军联赛完成抽签 小组对决揭晓

北京时间5月31日,2025年FIBA亚洲篮球冠军联赛分组抽签结果公布。浙江广厦男篮与乌兰巴托野马队及塔比亚特队同处A组。A组包括:浙江广厦(中国)、乌兰巴托野马(蒙古)、塔比亚特(伊朗);B组有宇都宫Brex队(日本)、马尼拉电气(菲律宾)、迪拜青年国民(阿联酋);C组则由…

知名黄金机构疑爆雷 有人被套超千万 黄金托管模式风险凸显

近日,浙江永坤控股有限公司(以下简称永坤黄金)出现兑付异常,引发广泛关注。多名投资者反映,无论在线上还是线下购买的黄金都无法提取或退款。永坤黄金提供线上和线下的黄金买卖服务,但大部分时间里,黄金并不在投资者手中,这种模式被称为黄金托管。业内人士指出,这种模…

广州市中心堵船了 龙舟盛景再现珠江

端午节期间,广州CBD上演了一场热闹非凡的龙舟招景仪式。5月31日上午,猎德涌上锣鼓喧天、鞭炮齐鸣,140个兄弟村社的150多条龙船汇聚于此,共庆佳节。这是猎德村近十年来规模最大的一次龙舟招景活动。河涌里舟楫相连,出现了“堵船”的盛况。河涌两岸挤满了围观的市民游客,欢…

用python绘制表格

1. 使用 tabulate 库&#xff08;终端/文本表格&#xff09; 适合在命令行或终端中快速生成简单的文本表格。 # 安装库 pip install tabulate # 示例代码 from tabulate import tabulatedata [["Alice", 28, "Engineer"],["Bob", 32, "…