当前位置:首页 > JavaScript

js 整数实现

2026-03-14 16:54:41JavaScript

整数表示方法

JavaScript 使用 IEEE 754 双精度浮点数标准表示所有数字,包括整数。整数实际上是浮点数的一个子集,没有单独的整数类型。所有数字都以 64 位格式存储,其中 1 位表示符号,11 位表示指数,52 位表示尾数。

安全整数范围

JavaScript 中能够精确表示的整数范围由 Number.MAX_SAFE_INTEGERNumber.MIN_SAFE_INTEGER 定义:

  • 最大安全整数:9007199254740991 (2^53 - 1)
  • 最小安全整数:-9007199254740991 (-(2^53 - 1))

超出这个范围的整数可能会丢失精度:

js 整数实现

console.log(9007199254740992 === 9007199254740993); // 可能输出 true

检查安全整数

使用 Number.isSafeInteger() 方法检测一个数字是否为安全整数:

Number.isSafeInteger(42); // true
Number.isSafeInteger(9007199254740992); // false

大整数支持

ES2020 引入了 BigInt 类型来处理超出安全范围的整数:

js 整数实现

const bigInt = 9007199254740993n; // 使用 n 后缀
console.log(bigInt + 1n); // 9007199254740994n

位运算处理

JavaScript 的位运算符 (|, &, <<, >> 等) 会将操作数转换为 32 位有符号整数:

console.log(0x7FFFFFFF | 0); // 2147483647 (最大32位有符号整数)
console.log(0xFFFFFFFF | 0); // -1 (32位有符号整数)

类型转换方法

将其他类型转换为整数:

// 字符串转整数
parseInt("123"); // 123
parseInt("101", 2); // 5 (二进制解析)

// 快速转换
~~3.14; // 3 (双按位非)
3.14 | 0; // 3 (按位或)
Math.floor(3.14); // 3
Math.trunc(3.14); // 3 (ES6)

特殊数值处理

JavaScript 中的特殊数值:

Number.isInteger(42.0); // true
Number.isInteger(NaN); // false
Number.isInteger(Infinity); // false

标签: 整数js
分享给朋友:

相关文章

原生js实现轮播图

原生js实现轮播图

基本结构搭建 HTML部分需要包含轮播图容器、图片列表及导航按钮。结构示例如下: <div class="slider-container"> <div class="slid…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js实现vr

js实现vr

使用WebXR API实现VR体验 WebXR是浏览器中实现VR和AR体验的标准API,它取代了早期的WebVR。现代浏览器如Chrome、Edge和Firefox已支持WebXR。 // 初始化W…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js实现正交

js实现正交

正交的概念 正交在数学和计算机科学中通常指两个向量垂直或线性无关。在编程中,正交性常被用于设计模块化、低耦合的系统。 向量正交判断 判断两个向量是否正交可以通过点积是否为0来实现: functio…