パッケージの詳細

units-converter

nosferatoy6kMIT1.0.3

A simple utility library to measure and convert between units

units, conversion, convert-units, es6-modules

readme

# Units Converter A simple library to convert units. Heavily based on convert-units.

CircleCI Codacy Badge Codacy Badge

An example implementation of the library.

Key Features

  • Tree shakable.
  • No dependencies.
  • Build for es6, cmj and umd.
  • Tested to 4 significant figures.

Installation

npm install units-converter --save

Usage

The library provide a simple chained API to transform units of the same type. The units are broken down to modules, so it is possible and recommended, to load only the unite types that you are using.

import { voltage } from 'units-converter';

voltage(1).from('V').to('mV').value;
//1000

or

import * as converter from 'units-converter';

converter.voltage(1).from('V').to('mV').value;
//1000

converter.mass(1).from('lb').to('oz').value;
//16
  • Convert unit will return an object of the unit specifed in the "to" function ```js import { length } from 'units-converter';

length(1200).from('mm').to('m'); / { value: 1.2, unit: 'm', system: 'metric', singular: 'Meter', plural: 'Meters' } /

* Convert unit to Best
```js
import { length } from 'units-converter';

// the smallest unit with a value above 1
length(12000).from('mm').toBest();
/* {  
      value: 1.2,
      unit: 'm',
      system: 'metric',
      singular: 'Meter',
      plural: 'Meters'
    } */

// the smallest unit excluding meters
length(12000).from('mm').toBest({ exclude: ['m'] });
 /* {
      value: 1200,
      unit: 'cm',
      system: 'metric',
      singular: 'Centimeter',
      plural: 'Centimeters'
    } */

// the smallest unit with a value equal to or above 10
length(900).from('mm').toBest({ cutOffNumber: 10 });
 /* {
      value: 90,
      unit: 'cm',
      system: 'metric',
      singular: 'Centimeter',
      plural: 'Centimeters'
    } */

// the smallest unit with a value equal to or above 10
length(1000).from('mm').toBest({ cutOffNumber: 10 });
 /* {
      value: 100,
      unit: 'cm',
      system: 'metric',
      singular: 'Centimeter',
      plural: 'Centimeters'
    } */
  • Possibilities will return an array with the abbreviations of the available units ```js import { voltage } from 'units-converter';

voltage().from('V').possibilities(); // [ 'V', 'mV', 'kV' ]


* Describe will return an object with all the details of the unit
```js
import { voltage } from 'units-converter';

voltage().describe('V');

/* { 
      unit: 'V', 
      system: 'metric', 
      singular: 'Volt', 
      plural: 'Volts' 
    } */
  • List will return and array with the description of all the available units ```js import { voltage } from 'units-converter';

voltage().list();

/ [ { unit: 'V', system: 'metric', singular: 'Volt', plural: 'Volts' }, { unit: 'mV', system: 'metric', singular: 'Millivolt', plural: 'Millivolts' }, { unit: 'kV', system: 'metric', singular: 'Kilovolt', plural: 'Kilovolts' } ] / ```

Units

<summary>Length</summary>

mm cm m in ft-us ft fathom mi * nMi

<summary>Area</summary>

mm2 cm2 m2 ha km2 in2 ft2 ac * mi2

<summary>Mass</summary>

mcg mg g kg oz lb mt t

<summary>Volume</summary>

mm3 cm3 ml l kl m3 km3 tsp Tbs in3 fl-oz cup pnt qt gal ft3 * yd3

<summary>Volume Flow Rate</summary>

mm3/s cm3/s ml/s cl/s dl/s l/s l/min l/h kl/s kl/min kl/h m3/s m3/min m3/h km3/s tsp/s Tbs/s in3/s in3/min in3/h fl-oz/s fl-oz/min fl-oz/h cup/s pnt/s pnt/min pnt/h qt/s gal/s gal/min gal/h ft3/s ft3/min ft3/h yd3/s yd3/min * yd3/h'

<summary>Temperature</summary>

C F K R

<summary>Time</summary>

ns mu ms s min h d week month year

<summary>Frequency</summary>

Hz mHz kHz MHz GHz THz rpm deg/s * rad/s

<summary>Speed</summary>

m/s km/h m/h knot * ft/s

<summary>Pace</summary>

s/m min/km s/ft min/km

<summary>Pressure</summary>

Pa hPa kPa MPa bar torr psi ksi

<summary>Digital</summary>

b Kb Mb Gb Tb B KB MB GB TB

<summary>Illuminance</summary>

lx ft-cd

<summary>Parts-Per</summary>

ppm ppb ppt ppq

<summary>Voltage</summary>

V mV * kV

<summary>Current</summary>

A mA * kA

<summary>Power</summary>

W mW kW MW * GW

<summary>Apparent Power</summary>

VA mVA kVA MVA * GVA

<summary>Reactive Power</summary>

VAR mVAR kVAR MVAR * GVAR

<summary>Energy</summary>

Wh mWh kWh MWh GWh J * kJ

<summary>Reactive Energy</summary>

VARh mVARh kVARh MVARh * GVARh

<summary>Angle</summary>

deg rad grad arcmin * arcsec

<summary>Charge</summary>

c mC μC nC * pC

<summary>Force</summary>

N kN * lbf

<summary>Acceleration</summary>

g (g-force) m/s2

Road map

  • Add types to support better integration with typescript using projects.

  • Add functionality for the addition of custom units.

  • Add more units, the goal is to approach the amount of units provided by matlab.

  • Rewrite the project with typescript.