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

JavaScript基础:运算符

引言

在JavaScript编程中,理解运算符、条件语句和循环是构建程序逻辑的基础。这些核心概念让代码能够做决策、重复执行任务并处理各种情况。本文将深入浅出地介绍这些关键概念,并通过实际示例帮助您掌握它们的使用方法。

运算符是执行特定操作的符号,用于操作值(操作数)并返回结果。

JavaScript中常⽤的运算符有:

1、算数运算符

运算符描述例子
+加法2+1=3
-减法5-3=2
*乘法6*2=12
/除法6/2=3
%取模7%2=1
**指数幂2**2=4

 示例代码:

let a = 10, b = 3;console.log(a + b);  // 13,加法
console.log(a - b);  // 7,减法
console.log(a * b);  // 30,乘法
console.log(a / b);  // 3.333...,除法
console.log(a % b);  // 1,取模(余数)
console.log(a ** b); // 1000,指数运算

运行结果:

 

2、递增和递减运算符

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

这两个运算符可以放在变量的前面(前缀) 或 后面(后缀),其行为有所不同:
写法名称行为
++variable前缀递增
 
先自增,再返回值
variable++
 
后缀递增先返回原值,再自增
--variable前缀递减先自减,再返回值
variable--后缀递减先返回原值,再自减

示例代码:

// 后置自增
let x = 5;
let y = x++; // 先赋值 5 给 y,然后 x 变成 6
console.log(x); // 6
console.log(y); // 5// 前置自增
let x1 = 5;
let y1 = ++x1; // 先 x 自增为 6,再赋值给 y
console.log(x1); // 6
console.log(y1); // 6// 后置自减
let x2 = 5;
let y2 = x2--; // 先赋值 5 给 y,然后 x 变成 4
console.log(x2); // 4
console.log(y2); // 5// 前置自减
let x3 = 5;
let y3 = --x3; // 先 x 自减为 4,再赋值给 y
console.log(x3); // 4
console.log(y3); // 4

运行结果:

●⽐较运算符

在 JavaScript 中,比较运算符(Comparison Operators) 用于比较两个值之间的关系,并返回一个布尔值(true 或 false)。它们常用于条件判断、循环控制等逻辑中。

3、常见比较运算符:

运算符描述说明实际案例结果
 
==比较值是否相等(允许类型转换)5 == "5"true
===比较值和类型是否都相等5 === "5"false
!=比较值是否不等(允许类型转换)10 != "10"false
!==比较值或类型是否不同
 
10 !== "10"true
>判断 a 是否大于 b7 > 5true
<判断 a 是否小于 b"apple" < "banana"true
>=判断 a 是否大于等于 b8 >= 8true
<=判断 a 是否小于等于 b3 <= 5true

 特殊比较示例:

实例代码:

// 比较 NaN 与 NaN
console.log("NaN == NaN:", NaN == NaN); // false
// null 与 undefined 在宽松相等下的比较
console.log("null == undefined:", null == undefined); // true
// null 与 undefined 在严格相等下的比较
console.log("null === undefined:", null === undefined); // false
// 对象之间的比较(引用不同)
console.log("{} == {}:", {} == {}); // false
// 数组之间的比较(引用不同)
console.log("[1] == [1]:", [1] == [1]); // false
// 布尔值与数字的宽松比较
console.log("true == 1:", true == 1); // true
// 空字符串与数字 0 的比较
console.log('"" == 0:', "" == 0); // true
// NaN和任何值都你不相等包括自己,使用Number.isNaN()来判断
let nan = NaN
console.log(Number.isNaN(nan)

运行结果: 

 

4、逻辑运算符

运算符描述例子
&&and(x < 10 && y > 1) 为 true
||or(x==5 || y==5) 为 false
!not!(x==y) 为 true

 逻辑运算符与“短路判断”详解
在 JavaScript 中,逻辑运算符 && 和 || 具有“短路”特性,即:如果根据第一个操作数就能确定结果,则不会继续计算第二个操作数。
① &&(逻辑与)—— 短路规则
如果第一个操作数是 假值(falsy),则直接返回第一个操作数,不执行后续。
假值包括:false, 0, "", null, undefined, NaN。

console.log(false && "Hello"); // false
console.log(0 && 100);         // 0
console.log("Hi" && "Hello");  // "Hello"

 ② ||(逻辑或)—— 短路规则
如果第一个操作数是 真值(truthy),则直接返回第一个操作数,不执行后续。
真值包括:非空字符串、非零数字、对象、数组等。

console.log(true || "World");      // true
console.log("Hello" || "World");   // "Hello"
console.log(null || "Default");    // "Default"

5、赋值运算符

运算符示例描述
=a = 5将右侧的值赋给左侧变量
+=a += 5加法后赋值
-=a -= 5减法后赋值
*=a *= 5乘法后赋值
/=a /= 5除法后赋值
%=a %= 5取模后赋值
**=a **= 5幂运算后赋值
let a = 10;a += 5;  // a = 15
a -= 3;  // a = 12
a *= 2;  // a = 24
a /= 4;  // a = 6
a %= 5;  // a = 1
a **= 3; // a = 1

 6、运算符的优先级

优先级运算符顺序
1小括号()
2一元运算符++ -- !
3算数运算符先*/%后+-
4关系运算符> >= < <=
5相等运算符== != === !==
6逻辑运算符先&&后||
7赋值运算符=
8逗号运算符,

http://www.xdnf.cn/news/11998.html

相关文章:

  • Dataguard switchover遇到ORA-19809和ORA-19804报错的问题处理
  • Cross-Attention:注意力机制详解《一》
  • Java 反汇编
  • 【原理解析】为什么显示器Fliker dB值越大,闪烁程度越轻?
  • React---扩展补充
  • 祝贺XC3576H通过银河麒麟桌面操作系统的兼容性测试,取得麒麟软件互认证证书
  • 结节性甲状腺肿全流程大模型预测与决策系统总体架构设计方案大纲
  • Spring BeanPostProcessor
  • 【计算机组成原理】SPOOLing技术
  • PowerBI企业运营分析—全动态盈亏平衡分析
  • AI IDE 正式上线!通义灵码开箱即用
  • 驱动:字符设备驱动注册、读写实操
  • 用OpenNI2获取奥比中光Astra Pro输出的深度图(win,linux arm64平台)
  • React从基础入门到高级实战:React 高级主题 - 测试进阶:从单元测试到端到端测试的全面指南
  • PWM 相关知识整理
  • 【大模型:知识图谱】--4.neo4j数据库管理(cypher语法1)
  • 振动力学:欧拉-伯努利梁的弯曲振动(考虑轴向力作用)
  • Qt Quick快速入门笔记
  • 国产三维CAD皇冠CAD在「金属压力容器制造」建模教程:蒸汽锅炉
  • 音乐播放器小程序设计与实现 – 小程序源码分享
  • typescript中的type如何使用
  • gitlab rss订阅失败
  • LeetCode 3226.使两个整数相等的位更改次数
  • SkyWalking架构深度解析:分布式系统监控的利器
  • Docker容器化的文件系统隔离机制解析
  • 解决com.jcraft.jsch.JSchException: Algorithm negotiation fail
  • CppCon 2015 学习:Beyond Sanitizers
  • 全角转半角函数(APP)
  • Viggle:开启视频人物替换新纪元
  • 书籍转圈打印矩阵(8)0604