珠海市网站建设_网站建设公司_UI设计师_seo优化
2026/1/22 9:39:58 网站建设 项目流程

🎬 HoRain云小助手:个人主页

🔥 个人专栏: 《Linux 系列教程》《c语言教程》

⛺️生活的理想,就是为了理想的生活!


⛳️ 推荐

前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。

专栏介绍

专栏名称

专栏介绍

《C语言》

本专栏主要撰写C干货内容和编程技巧,让大家从底层了解C,把更多的知识由抽象到简单通俗易懂。

《网络协议》

本专栏主要是注重从底层来给大家一步步剖析网络协议的奥秘,一起解密网络协议在运行中协议的基本运行机制!

《docker容器精解篇》

全面深入解析 docker 容器,从基础到进阶,涵盖原理、操作、实践案例,助您精通 docker。

《linux系列》

本专栏主要撰写Linux干货内容,从基础到进阶,知识由抽象到简单通俗易懂,帮你从新手小白到扫地僧。

《python 系列》

本专栏着重撰写Python相关的干货内容与编程技巧,助力大家从底层去认识Python,将更多复杂的知识由抽象转化为简单易懂的内容。

《试题库》

本专栏主要是发布一些考试和练习题库(涵盖软考、HCIE、HRCE、CCNA等)

目录

⛳️ 推荐

专栏介绍

🔧 深入理解 Number 对象

1. 创建 Number 对象

2. 重要静态属性详解

3. 类型判断方法对比

4. 数值格式化方法

⚠️ 实用技巧与注意事项

💡 总结


JavaScript 的Number对象是处理数值数据的基础,它既是原始数值的包装对象,也提供了丰富的属性和方法来处理数值操作。下面这个表格汇总了其核心特性,帮你快速建立整体认知。

特性类别

核心属性/方法

说明与典型用途

核心概念

原始数值与Number对象

原始数值(如123)与new Number(123)创建的对象不同,但JavaScript通常会自动转换 。

静态属性(常量)

Number.MAX_SAFE_INTEGER

JavaScript 中能精确表示的最大安全整数(2^53 - 1)。

Number.MIN_SAFE_INTEGER

JavaScript 中能精确表示的最小安全整数(- (2^53 - 1))。

Number.MAX_VALUE

能表示的最大正数 。

Number.MIN_VALUE

能表示的最接近0的正数 。

Number.EPSILON

表示1与大于1的最小浮点数之间的差值,常用于浮点数比较的容错判断 。

静态方法(类型判断)

Number.isFinite()

判断一个值是否为有限的数值 。

Number.isInteger()

判断一个值是否为整数 。

Number.isSafeInteger()

判断一个值是否在安全整数范围内 。

Number.isNaN()

严格判断一个值是否为NaN,只有NaN本身返回true

实例方法(格式化转换)

toFixed(digits)

将数字格式化为指定小数位数的字符串,会进行四舍五入 。

toExponential(fractionDigits)

将数字转换为指数计数法表示的字符串 。

toPrecision(precision)

根据指定的有效数字位数来格式化数字,可能返回定点或指数表示法 。

toString(radix)

将数字转换为指定进制(radix)的字符串形式 。

🔧 深入理解 Number 对象

1. 创建 Number 对象

你可以通过两种主要方式创建 Number 对象:

let numLiteral = 123; // 原始数值类型 let numObject = new Number(123); // Number 对象 console.log(typeof numLiteral); // "number" console.log(typeof numObject); // "object" console.log(numLiteral === numObject); // false,因为类型不同
2. 重要静态属性详解

Number 对象的静态属性提供了一系列重要的数值常量,定义了 JavaScript 中数值表示的边界 :

3. 类型判断方法对比

ES6 引入的类型判断方法(如Number.isNaN()Number.isFinite())比全局方法更严格,它们不会对参数进行类型转换 :

// 全局 isNaN() 会先尝试将参数转换为数字 isNaN("123abc"); // true,因为转换后是 NaN // Number.isNaN() 不会进行类型转换 Number.isNaN("123abc"); // false,因为字符串本身不是 NaN // 同样适用于 isFinite isFinite("123"); // true,字符串被转换为数字 Number.isFinite("123"); // false,因为字符串不是数值类型
4. 数值格式化方法

Number 实例方法提供了灵活的数值格式化能力:

let price = 19.956; console.log(price.toFixed(2)); // "19.96"(四舍五入)
let largeNum = 123456789; console.log(largeNum.toExponential(2)); // "1.23e+8"
let num = 123.456; console.log(num.toPrecision(4)); // "123.5"

⚠️ 实用技巧与注意事项

  1. 浮点数精度问题:JavaScript 使用二进制浮点数,可能导致十进制运算出现精度误差。建议使用容差比较法 。

// 不推荐的直接比较 console.log(0.1 + 0.2 === 0.3); // false // 推荐的容差比较 console.log(Math.abs(0.1 + 0.2 - 0.3) < Number.EPSILON); // true
  1. 数值转换的最佳实践

  2. NaN 的特殊处理NaN是 JavaScript 中唯一不等于自身的值。检测NaN时应使用Number.isNaN(),而非直接比较 。

💡 总结

Number 对象是 JavaScript 数值处理的基础,提供了从基本数值表示到高级格式化的全面功能。理解安全整数范围、浮点数精度特性以及正确的类型判断方法,对于编写可靠的数值计算代码至关重要。对于超出安全整数范围的计算需求,可以考虑使用 ES2020 引入的BigInt类型来处理大整数 。

希望这份详细的指南能帮助你深入理解并有效运用 JavaScript Number 对象!

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询