在使用JavaScript执行数学方面的任务时,往往要用到浮点运算,且需要精确到某位小数,这就容易造成错误,而且会相当费时。因此,如果你需要做一些高精度的数学计算的编程工作,比如财务或科学计算,那么你一定需考虑使用下面的这些库。

1.  numbers.js

numbers.js提供了大量的、可用于服务器端的数学功能,你可以用它来执行下面这些任务:

  • 基本计算(如两数相加)
  • 复数
  • 微积分
  • 数字信号处理(DSP)
  • 矩阵运算
  • 素数计算
  • 统计
  • 迭代计算(如斐波那契数列)

要使用numbers.js,你首先需要在服务器上安装它,并确保系统中安装有Node.js。

2.  Numeric Javascript

该库重点在于如下数学计算领域:

  • 线性代数
  • 复数
  • 样条函数
  • ODE求解
  • 无约束优化
  • PDE和稀疏线性代数

Numeric Javascript运行在客户端,而不像numbers.js运行在服务器端。Numeric Javascript的优势是在执行小型计算时,由于不需要通过网络传输数据,速度非常快,而缺点是当执行大型、复杂的运算时,需要访问服务器数据,速度就没那么快了。

3.  Tangle

Tangle是一个JavaScript数学库,可以创建与用户交互的数学运算页面,且有极快的响应时间。

Tangle的独特方式在于它提供了一个简单的方式来获取用户的输入。比如,用户可以通过调整图表中的元素来获得新的计算结果。

4.  accounting.js

一些数据库只接受特定类型的输入或输出特定格式的结果,而accounting.js可以帮助开发者输出美观的结果,同时也接受格式化的输入。比如,如果输入$100,000.00作为JavaScript的初始计算数据,JavaScript可能由于无法解析此类格式而导致错误,而accounting.js的作用此时就可以体现了,该库可以让JavaScript识别这类数据。

比如将数字转换为货币格式:

  1. <p>
  2. This number:
  3. <script>
  4. document.write(accounting.formatMoney(1234567.89));
  5. </script>
  6. should appear as a monetary amount.
  7. </p>

Via smartbear

4 个用于执行高级数学计算的 JavaScript 库的更多相关文章

  1. 用于展现图表的50种JavaScript库

    在很多项目中都会有在前端展现数据图表的需求,而在开发过程中,开发者往往会使用一些JavaScript库,从而更有效地达到想要的目标.最近,TechSlide上的一篇文章总结了50种用于展现图表的Jav ...

  2. 一个用于格式化和处理数字的javascript库----Numeral.js

    npm地址:https://www.npmjs.com/package/numeral 1.转化成百分比: numeral(num).format('0.00%')

  3. Math Number 数值类 包装类 数学计算 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  4. C/C++,java开源数学计算库

    有限元分析.数值计算.三维建模.信号处理.性能分析.仿真分析...这些或多或少与我们常用的软件息息相关,假如有一天你只需要这些大型软件系统的某一个很有限的功能,你是不是也要因此再用一用那动辄几个g的软 ...

  5. Shell脚本之六 数学计算

    前面一节Shell篇之五 基本运算符介绍了常见的 Shell 算术运算符,这节介绍 Shell 的数学计算.Shell 和其它编程语言不同,Shell 不能直接进行算数运算,必须使用数学计算命令. 下 ...

  6. 理工科应该的知道的C/C++数学计算库(转)

    理工科应该的知道的C/C++数学计算库(转) 作为理工科学生,想必有限元分析.数值计算.三维建模.信号处理.性能分析.仿真分析...这些或多或少与我们常用的软件息息相关,假如有一天你只需要这些大型软件 ...

  7. Shell之数学计算

    本博客已经迁往http://www.kemaswill.com/, 博客园这边也会继续更新, 欢迎关注~ 数学计算是Shell中比较常用的一种操作,  但是因为shell中所有的变量都默认为字符串, ...

  8. Shell脚本笔记(三)shell中的数学计算

    shell中的数学计算 一.使用方括号 #!/bin/bash a= b= c= res=$[$a * ($c-$b)] echo $res 二.使用(()) +)) ((i=+)) b=$((-*) ...

  9. BZOJ 5334--[Tjoi2018]数学计算(线段树)

    5334: [Tjoi2018]数学计算 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 220  Solved: 147[Submit][Status ...

随机推荐

  1. python学习之操作redis

    一.Redis安装网上很多可以查找 二.redis-py的安装,使用命令pip install redis. 安装过程中如果产生连接超时的错误,可以使用国内镜像参考如下 豆瓣:pip install ...

  2. 浅谈CopyOnWriteArraySet

    CopyOnWriteArraySet结构图   CopyOnWriteArraySet.png CopyOnWriteArraySet主要方法 public boolean add(E e); pu ...

  3. Linux 反弹shell(二)反弹shell的本质

    Linux 反弹shell(二)反弹shell的本质 from:https://xz.aliyun.com/t/2549 0X00 前言 在上一篇文章 Linux反弹shell(一)文件描述符与重定向 ...

  4. js计算两个时间差

    时间格式 time:'2018-04-26 15:49:00'需要转换为time:'2018/04/26 15:49:00' 使用time.replace(/\-/g, "/") ...

  5. 获取类范形的Class

    public class Test<T>{ } Type genType = getClass().getGenericSuperclass(); Type[] params = ((Pa ...

  6. 0.0.Pycharm使用技巧

    调整自动字体大小 Increase(字体变大) Decrease(字体变小) 背景颜色设置 pycharm 左侧菜单问题 解决 pycharm中配置启动Django项目 1.先打开mange.py,然 ...

  7. jedis:分片集群使用

    jedis使用 引入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis ...

  8. identifier of an instance of com.xxx.model.system.xxxObject was altered from 1765 to 1766

    Caused by: org.hibernate.HibernateException: identifier of an instance of com.xxx.model.system.xxxOb ...

  9. PostgreSQL的 pg_hba.conf 配置参数详解

    pg_hba.conf 配置详解 该文件位于初始化安装的数据库目录下 编辑 pg_hba.conf 配置文件   postgres@clw-db1:/pgdata/9.6/poc/data> v ...

  10. cube.js 学习(七)cube.js type 以及format 说明

      cube.js 对于measure以及dimension 提供了丰富的数据类型,基本满足我们常见应用的开发,同时对于不同类型也提供了 格式化的操作 measure类型 number 格式 purc ...