infinity是javascript中表示正无穷大的合法数值,由正数除以0、超限运算或显式赋值产生;-infinity表示负无穷大;可用isfinite()、===等判断,参与运算时遵循特定规则。

Infinity 是 JavaScript 中 Number 类型的一个特殊值,表示“正无穷大”,它不是错误或异常,而是一个合法的数值,可用于数学运算和比较。
Infinity 的产生方式
以下情况会得到 Infinity:
- 正数除以 0,例如
5 / 0→ Infinity - 超出 JavaScript 最大安全整数范围(
Number.MAX_VALUE)的正数运算,例如Number.MAX_VALUE * 2 - 显式赋值:
let x = Infinity; - 全局属性
Infinity本身(只读,不可修改)
负无穷大:-Infinity
对应地,-Infinity 表示负无穷大,通常由负数除以 0 得到,例如 -5 / 0。它也属于 Number 类型,且 typeof -Infinity === 'number' 为 true。
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
与 Infinity 相关的判断和操作
不能用 == 或 === 直接比较 Infinity 和字符串 "Infinity",必须用数值方式判断:
- 用
isFinite()判断是否为有限数(返回 false 表示是 Infinity 或 -Infinity 或 NaN) - 用
Number.isFinite()更严格,只对有限数字返回 true - 直接比较:
x === Infinity或x === -Infinity -
Math.pow(2, 1024)等极大指数运算也会返回 Infinity
实际使用中的注意事项
Infinity 参与常规算术运算时有明确规则:
-
Infinity + 1、Infinity * 2仍为 Infinity -
Infinity - Infinity或Infinity / Infinity结果是 NaN -
Math.max(1, 2, Infinity)返回 Infinity;Math.min(1, 2, -Infinity)返回 -Infinity - 在数组排序中,Infinity 会被排在末尾(升序),-Infinity 在开头
它不是神秘值,而是标准定义的数值,合理使用能简化边界处理逻辑,比如初始化最大值搜索:let max = -Infinity;。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










