JavaScript 基础数学(数字篇)

JavaScript 基础数学(数字篇)JavaScript 中的数字处理是基础且重要的部分 它涉及数字类型 运算规则 内置方法等内容 下面我们系统梳理 JavaScript 数字相关的核心知识 一 数字类型本质 JavaScript 中只有一种数字类型 64 位双精度浮点数

欢迎大家来到IT世界,在知识的湖畔探索吧!

JavaScript 中的数字处理是基础且重要的部分,它涉及数字类型、运算规则、内置方法等内容。下面我们系统梳理 JavaScript 数字相关的核心知识:

一、数字类型本质

JavaScript 中只有一种数字类型 ——64 位双精度浮点数,无论整数、小数都统一用这种格式存储。
这意味着:

  • 整数和小数没有类型区分(如 5 和 5.0 本质相同)
  • 存在精度限制(对极大 / 极小数字或高精度计算可能有误差)
JavaScript 基础数学(数字篇)



欢迎大家来到IT世界,在知识的湖畔探索吧!

二、数字的表示方式

1. 十进制(默认)

let a = 123; // 整数 let b = 123.45; // 小数 let c = .45; // 省略整数部分(等价于 0.45) let d = 123.; // 省略小数部分(等价于 123)

欢迎大家来到IT世界,在知识的湖畔探索吧!

2. 其他进制

  • 二进制:前缀 0b 或 0B(0-1)
欢迎大家来到IT世界,在知识的湖畔探索吧!let bin = 0b1010; // 二进制 1010 → 十进制 10
  • 八进制:前缀 0o0O(0-7)
let oct = 0o17; // 八进制 17 → 十进制 15
  • 十六进制:前缀 0x0X(0-9, a-f/A-F)
欢迎大家来到IT世界,在知识的湖畔探索吧!let hex = 0xFF; // 十六进制 FF → 十进制 255

3. 科学计数法

用于表示极大或极小的数字:

let large = 123e5; // 123 × 10⁵ →  let small = 123e-5; // 123 × 10⁻⁵ → 0.00123
JavaScript 基础数学(数字篇)

三、算术运算符

运算符

说明

示例

结果

+

加法

2 + 3

5

减法

5 – 2

3

*

乘法

3 * 4

12

/

除法

10 / 2

5

%

取余(模运算)

10 % 3

1

幂运算(ES6+)

2 3

8(等价于 Math.pow (2,3))

JavaScript 基础数学(数字篇)

四、特殊数字值

1.Infinity(无穷大)

  • 表示超过 JavaScript 最大可表示数字的值
  • 特性:
欢迎大家来到IT世界,在知识的湖畔探索吧!console.log(1 / 0); // Infinity console.log(Infinity + 1); // Infinity(无穷大+1还是无穷大) console.log(-Infinity); // 负无穷大(如 -1 / 0)

2.NaN(非数字,Not a Number)

  • 表示 “不是有效数字” 的结果(但类型仍为 number)
  • 产生场景:
console.log("abc" / 2); // NaN(字符串无法参与除法) console.log(0 / 0); // NaN(数学上无意义)
  • 注意:NaN 不等于任何值(包括自身),需用 Number.isNaN() 检测:
欢迎大家来到IT世界,在知识的湖畔探索吧!console.log(NaN === NaN); // false console.log(Number.isNaN(NaN)); // true
JavaScript 基础数学(数字篇)

五、常用数字处理方法

1. 全局转换函数

  • Number():将值转为数字(严格转换)
Number("123"); // 123 Number("123abc"); // NaN(包含非数字字符) Number(true); // 1(布尔值 true→1,false→0)
  • parseInt(str, radix):解析整数(忽略非数字字符,可指定进制)
欢迎大家来到IT世界,在知识的湖畔探索吧!parseInt("123abc"); // 123(忽略后面的非数字) parseInt("11", 2); // 3(二进制 "11" 转十进制)
  • parseFloat(str):解析浮点数(只支持十进制)
parseFloat("123.45abc"); // 123.45

2.Math对象(核心工具)

Math 是内置对象,提供大量数学运算方法(无需实例化):

方法

说明

示例

结果

Math.abs(x)

取绝对值

Math.abs(-5)

5

Math.round(x)

四舍五入

Math.round(2.6)

3

Math.ceil(x)

向上取整

Math.ceil(2.1)

3

Math.floor(x)

向下取整

Math.floor(2.9)

2

Math.max(…nums)

取最大值

Math.max(1, 3, 2)

3

Math.min(…nums)

取最小值

Math.min(1, 3, 2)

1

Math.random()

生成 [0,1) 随机数

Math.random()

如 0.345

Math.pow(x, y)

x 的 y 次方

Math.pow(2, 3)

8

Math.sqrt(x)

开平方

Math.sqrt(16)

4

JavaScript 基础数学(数字篇)

六、常见陷阱与注意事项

欢迎大家来到IT世界,在知识的湖畔探索吧!console.log(0.1 + 0.2); // 0.000004(而非 0.3)

解决:用 toFixed() 控制小数位数,或转整数运算。

console.log(1 + 2); // 3(数字加法) console.log("1" + 2); // "12"(字符串拼接) console.log(+"1" + 2); // 3(用 + 快速转为数字)
欢迎大家来到IT世界,在知识的湖畔探索吧!console.log(Number.MAX_SAFE_INTEGER); // 40991(2^53 - 1)

大整数需求可用 BigInt 类型(后缀 n):

let big = 40993n; // BigInt 类型,可精确表示

通过掌握这些基础,你可以应对 JavaScript 中大部分数字处理场景。实际开发中,复杂计算建议结合工具库(如 decimal.js)处理精度问题。

JavaScript 基础数学(数字篇)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/145352.html

(0)
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信