当前位置:首页 > 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))

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

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

检查安全整数

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

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

大整数支持

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

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 中的特殊数值:

js 整数实现

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

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

相关文章

使用js实现

使用js实现

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

js实现vue路由

js实现vue路由

Vue 路由的基本实现 在 Vue.js 中实现路由功能通常使用 Vue Router 库。Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue R…

js 实现滚动

js 实现滚动

实现滚动的方法 使用 window.scrollTo() window.scrollTo() 方法可以滚动到文档中的特定位置。可以指定 x 和 y 坐标,或者使用平滑滚动的选项。 // 滚动到指定位…

js 实现全屏

js 实现全屏

使用 requestFullscreen 方法 通过调用元素的 requestFullscreen 方法可以实现全屏。该方法兼容现代浏览器,但不同浏览器可能需要前缀。 const element =…

js实现左右滑动

js实现左右滑动

实现左右滑动的 JavaScript 方法 监听触摸事件 通过 touchstart、touchmove 和 touchend 事件来检测用户的手势操作。记录触摸的起始位置和移动距离,判断滑动方向。…

js 实现超链接

js 实现超链接

使用 HTML 的 <a> 标签 在 JavaScript 中动态创建超链接可以通过操作 DOM 实现。通过 document.createElement 创建一个 <a> 元…