You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
2.5 KiB

# num2fraction
[![Build Status](https://travis-ci.org/yisibl/num2fraction.svg)](https://travis-ci.org/yisibl/num2fraction)
[![NPM Downloads](https://img.shields.io/npm/dm/num2fraction.svg?style=flat)](https://www.npmjs.com/package/num2fraction)
[![NPM Version](http://img.shields.io/npm/v/num2fraction.svg?style=flat)](https://www.npmjs.com/package/num2fraction)
[![License](https://img.shields.io/npm/l/num2fraction.svg?style=flat)](http://opensource.org/licenses/MIT)
> Converting Number to Fraction with Node.js.
## Installation
```console
npm install num2fraction
```
## Usage
```js
var π = Math.PI
var n2f = require('num2fraction')
console.log(n2f(0)) // => 0
console.log(n2f(.2)) // => 1/5
console.log(n2f(1.1)) // => 11/10
console.log(n2f(1.2)) // => 6/5
console.log(n2f(1.3)) // => 13/10
console.log(n2f(1.4)) // => 7/5
console.log(n2f(1.5)) // => 3/2
console.log(n2f(2)) // => 2/1
console.log(n2f(2.1)) // => 21/10
console.log(n2f(3)) // => 3/1
console.log(n2f(2.555)) // => 511/200
console.log(n2f(8.36)) // => 209/25
console.log(n2f('3em')) // => 3/1
console.log(n2f('1.5px')) // => 3/2
console.log(n2f(7 / 9) // => 7/9
console.log(n2f(8 / 9) // => 8/9
console.log(n2f(512 / 999) // => 512/999
console.log(n2f((2 * π / 3) / π) // => 2/3
console.log(n2f((8 * 5) / (4 / 2)) // => 20/1
```
## Example
Opera [old versions](http://www.opera.com/docs/specs/presto28/css/o-vendor/) support the non-standard `-o-min-device-pixel-ratio` or `-o-max-device-pixel-ratio` in CSS media queries.
```css
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1), /* Opera */
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi), /* fallback */
only screen and ( min-resolution: 2dppx) {
}
```
## Changelog
### v1.2.2
* \+ Remove: Debug log message.
### v1.2.1
* \+ Fix: 0 must be converted to a string.
### v1.2.0
* \+ Fix: Accomodate rounding errors. (by @jamestalmage)
* \+ Fix: The negative sign should be on numerator. (by @jamestalmage)
### v1.1.0
* \+ Use more precise (not fixed) precision factor for the calculation
### v1.0.1
* \- Remove "ci.testling.com"
### V1.0.0
> First release.
## License
[MIT](LICENSE)