a javascript library for unit conversions and organizations
import { organize } from 'conversion';
const myCustomOrganizer = organize([60, 60, 24, 7]);
const output = myCustomOrganizer(24 * 60 * 60);
// output is [1, 0, 0, 0], which means, 1 day, 0 hours, 0 minutes and 0 seconds
const output = myCustomOrganizer(14 * 24 * 60 * 60 + 1);
// output is [2, 0, 0, 0, 1], which means, 2 weeks and 1 second
// if strict is set to true, the output array length will fill unreached higher units with 0
const myStrictOrganizer = organize([60, 60, 24, 7], {strict: true});
const output = myStrictOrganizer(24 * 60 * 60);
// output is [0, 1, 0, 0, 0], which means, 0 weeks, 1 day, 0 hours, 0 minutes and 0 seconds
available units:
- 'm' / 'meter'
- 'in' / 'inch'
- 'ft' / 'feet'
available units are listed in https://physics.nist.gov/cuu/Units/prefixes.html
combine() is the opposite of organize()
import { combine } from 'conversion';
let output;
// you can do
output = combine([60,60])('00:01:30'.split(':').map(Number))
// which returns 90
// or you can simply do
output = combine([60,60])([1, 0, 0])
// which returns 3600
import { length, organize } from 'conversion'
const ftIn = length('ft', 'in')(1) // equals 12
const meterToInch = length('meter', 'inch') // returns a function
const metricHeightToImperial = height => organize([ftIn])(meterToInch(height))
metricHeightToImperial(1.85) // equals [6, 0.8346456692913584]