# bignums

> js高精度运算

Latest version **1.0.1** (published 2022-06-07) · ISC license · 0 weekly downloads

## Install

```sh
npm install bignums
pnpm add bignums
yarn add bignums
bun add bignums
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.1 |
| Published | 2022-06-07 |
| First published | 2022-06-07 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 89.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | 徐小禹 |
| Maintainers | xu_yyu |
| Keywords | js, bignumber |

## Links

- npm: https://www.npmjs.com/package/bignums
- npm.io page: https://npm.io/package/bignums

## Alternatives

- [@mapbox/jsonlint-lines-primitives](https://npm.io/package/@mapbox/jsonlint-lines-primitives.md) — 5.3M weekly downloads
- [reftools](https://npm.io/package/reftools.md) — 3.5M weekly downloads
- [@hey-api/openapi-ts](https://npm.io/package/@hey-api/openapi-ts.md) — 3.5M weekly downloads
- [@mapbox/geojson-rewind](https://npm.io/package/@mapbox/geojson-rewind.md) — 2.4M weekly downloads
- [turbo-stream](https://npm.io/package/turbo-stream.md) — 1.7M weekly downloads

## Recent versions

- 1.0.1 (latest) — 2022-06-07
- 1.0.0 — 2022-06-07

## README

### 安装
```
npm install bignums -S
```

### 使用
```
组件内使用
import bignum from 'bignums';

main.js里面使用
import bignum from 'bignums';
Vue.prototype.bignum = bignum;
```
#### sum
```js
// 两数之和
var x = bignum.sum('11', 23)
x.toNumber() // 34

// 多个参数
arr = [2, new bignum(14), '15.9999', 12]
var y = bignum.sum(...arr)
y.toString() // '43.9999'
```
#### maximum,minimum
```js
// 求最大值,简写 max,min

var x = [2222, 3333, '4444']
bignum.max(...x).toNumber() // 4444
bignum.min(...x).toNumber() // 2222
```
#### decimalPlaces(dp)
```js
// 确定小数位数

var x = new bignum(1234.5678912345)
var y = new bignum(1234.56)
x.dp(2).toNumber() // 1234.56
y.dp(10).toNumber() // 1234.56
```
#### plus
```js
//加法运算

0.1 + 0.2 // 0.30000000000000004
var x = new bignum(0.1)
x.plus(0.2).toNumber() // 0.3
```
#### minus
```js
//减法运算

0.3 - 0.1 // 0.19999999999999998
var x = new bignum(0.3)
x.minus(0.1) // 0.2
```
#### multipliedBy(times)
```js
//乘法运算

0.6 * 3 // 1.7999999999999998
var x = new bignum(0.6)
x.times(3) // 1.8
```
#### dividedBy(div)
```js
//除法运算

var x = new bignum(300)
x.div(3).toNumber() // 100
x.div(7).dp(3).toNumber() // 42.857
```
#### dividedToIntegerBy(idiv)
```js
//除法运算,返回整数

var x = new bignum(5)
x.idiv(3).toNumber() // 1
x.idiv(0.7).toNumber() // 7
```
#### modulo(mod)
```js
//取余

1 % 0.9 // 0.09999999999999998
var x = new bignum(1)
x.mod(0.9).toNumber() // 0.1
```
#### toFixed
```js
//控制小数位数,不够后面补 0

var x = 3.456
var y = new bignum(x)
x.toFixed().toNumber() // 3
y.toFixed().toNumber() // 3.456
y.toFixed(0).toNumber() // 3
y.toFixed(2).toNumber() // 3.46
y.toFixed(5).toNumber() // 3.45600
```

---
_Source: https://npm.io/package/bignums · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
