当前位置:首页 > JavaScript

js实现运算

2026-04-05 19:50:21JavaScript

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;  // 指数

递增递减运算

js实现运算

let x = 5;
x++;  // 后置递增
++x;  // 前置递增
x--;  // 后置递减
--x;  // 前置递减

高级数学运算

Math 对象方法

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

三角函数

js实现运算

Math.sin(Math.PI/2);  // 正弦
Math.cos(Math.PI);  // 余弦
Math.tan(Math.PI/4);  // 正切

位运算

let a = 5;  // 0101
let b = 3;  // 0011

a & b;  // AND 0001 (1)
a | b;  // OR 0111 (7)
a ^ b;  // XOR 0110 (6)
~a;  // NOT 1010 (-6)
a << 1;  // 左移 1010 (10)
a >> 1;  // 右移 0010 (2)
a >>> 1;  // 无符号右移 0010 (2)

大数运算

对于超出安全整数范围(±(2^53-1))的运算,可以使用 BigInt:

const bigNum = 9007199254740991n;
const biggerNum = bigNum + 1n;

精度处理

浮点数运算可能存在精度问题,需要特殊处理:

// 加法
function add(num1, num2) {
  const precision = Math.max(
    num1.toString().split('.')[1]?.length || 0,
    num2.toString().split('.')[1]?.length || 0
  );
  const factor = 10  precision;
  return (num1 * factor + num2 * factor) / factor;
}

// 比较
function equal(num1, num2) {
  return Math.abs(num1 - num2) < Number.EPSILON;
}

表达式求值

使用 eval 函数可以执行字符串表达式(需注意安全问题):

let result = eval('(5 + 3) * 2');  // 16

对于更复杂的数学表达式,可以考虑使用 math.js 等专业库。

标签: js
分享给朋友:

相关文章

js实现瀑布流

js实现瀑布流

实现瀑布流布局 瀑布流布局是一种常见的网页布局方式,常用于图片展示、商品列表等场景。以下是使用 JavaScript 实现瀑布流布局的几种方法。 纯 JavaScript 实现 通过计算元素的位置和…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js实现投球

js实现投球

实现投球动画的基本思路 使用JavaScript和CSS动画结合的方式模拟投球效果。核心是通过改变元素的位置、旋转和缩放属性,配合定时器或CSS过渡实现平滑动画。 创建基础HTML结构 <…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…

js实现vue路由

js实现vue路由

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