当前位置:首页 > JavaScript

js实现数值计算

2026-03-15 16:55:35JavaScript

JavaScript 数值计算基础

JavaScript 提供多种方式进行数值计算,包括基本算术运算、内置数学对象以及处理大数或高精度计算的方法。

基本算术运算 JavaScript 支持标准的算术运算符:

let sum = 5 + 3;      // 加法
let difference = 5 - 3; // 减法
let product = 5 * 3;   // 乘法
let quotient = 5 / 3;  // 除法
let remainder = 5 % 3; // 取模
let exponent = 5  3; // 指数

Math 对象 内置 Math 对象提供高级数学函数:

Math.sqrt(16);       // 平方根
Math.pow(2, 3);      // 幂运算
Math.round(3.7);     // 四舍五入
Math.ceil(3.2);      // 向上取整
Math.floor(3.7);     // 向下取整
Math.random();       // 0-1随机数
Math.max(1, 3, 2);   // 最大值
Math.min(1, 3, 2);   // 最小值

处理浮点数精度问题

JavaScript 使用 IEEE 754 双精度浮点数,可能导致精度问题。解决方法包括:

使用 toFixed() 方法

let result = (0.1 + 0.2).toFixed(2); // "0.30"

放大为整数计算

js实现数值计算

let result = (0.1 * 10 + 0.2 * 10) / 10; // 0.3

使用第三方库decimal.jsbig.js 处理高精度计算:

// 使用 decimal.js 示例
import { Decimal } from 'decimal.js';
let sum = new Decimal(0.1).plus(0.2).toNumber();

大整数处理

ES2020 引入 BigInt 类型处理超过 Number.MAX_SAFE_INTEGER 的整数:

const bigNum = 9007199254740991n + 2n; // 9007199254740993n

数值转换与验证

类型转换

parseInt("123");     // 123
parseFloat("123.45");// 123.45
Number("123");       // 123

数值验证

js实现数值计算

isNaN(NaN);          // true
isFinite(123);       // true
Number.isInteger(5); // true

高级数学计算

三角函数

Math.sin(Math.PI / 2); // 1
Math.cos(Math.PI);     // -1

对数计算

Math.log(Math.E);      // 1
Math.log10(100);       // 2

位运算

5 & 3;  // AND: 1
5 | 3;  // OR: 7
5 ^ 3;  // XOR: 6
~5;     // NOT: -6
5 << 1; // 左移: 10
5 >> 1; // 右移: 2

性能优化技巧

避免在循环中重复计算不变值,将常量提取到循环外部。使用位运算替代部分数学计算可提高性能,但会降低可读性。

对于密集计算任务,考虑使用 Web Workers 将计算移出主线程,或使用 WebAssembly 处理高性能数值计算需求。

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

相关文章

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callback) {…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js怎么实现异步

js怎么实现异步

异步实现方法 JavaScript中实现异步操作主要通过以下几种方式: Promise Promise是ES6引入的异步解决方案,用于处理异步操作的成功或失败状态。 const promise =…

js实现代码雨

js实现代码雨

实现代码雨效果 使用HTML5 Canvas和JavaScript可以轻松实现经典的代码雨效果。以下是完整的实现代码和说明: HTML结构 <!DOCTYPE html> <…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…