From 4860087b7ca5626c41d7af32b480a45c90a47129 Mon Sep 17 00:00:00 2001 From: Justin Bull Date: Sat, 7 Feb 2015 17:20:36 -0500 Subject: [PATCH] Mention BigNumber for JavaScript as another library available --- content/languages/javascript.html | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/content/languages/javascript.html b/content/languages/javascript.html index 819ac9f..986fd17 100644 --- a/content/languages/javascript.html +++ b/content/languages/javascript.html @@ -12,13 +12,21 @@ Decimal Types ------------- -The best decimal type for JavaScript seems to be a port of [Java's](/languages/java/) BigDecimal class, which also supports [rounding modes](/errors/rounding/): +One of best decimal type for JavaScript seems to be a port of [Java's](/languages/java/) BigDecimal class, which also supports [rounding modes](/errors/rounding/): var a = new BigDecimal("0.01"); var b = new BigDecimal("0.02"); var c = a.add(b); // 0.03 var d = c.setScale(1, BigDecimal.prototype.ROUND_HALF_UP); +There is also bignumber.js, which boasts a simpler API, smaller library size, and [more operations per second](http://jsperf.com/bignumber-js-vs-big-js-vs-decimal-js/8) over BigDecimal for JavaScript: + + BigNumber.config({ROUNDING_MODE: BigNumber.ROUND_HALF_UP}) + var a = new BigNumber("0.01"); + var b = new BigNumber("0.02"); + var c = a.plus(b); // BigNumber(0.03) + var d = c.toFixed(1); // "0.0" + How to Round ------------ @@ -36,6 +44,7 @@ Resources --------- * [BigDecimal for JavaScript](https://github.com/dtrebbien/BigDecimal.js) +* [bignumber.js for JavaScript](https://github.com/MikeMcl/bignumber.js) * [Core JavaScript Reference](https://developer.mozilla.org/en/JavaScript/Reference) * [parseFloat()](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseFloat) * [toPrecision()](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Number/toPrecision)