1.0.5 • Published 10 months ago

kilomega v1.0.5

Weekly downloads
3
License
MIT
Repository
github
Last release
10 months ago

Build status Coverage Status Socket Badge npm version GitHub CodeFactor

kilomega

Get the right unit prefix like kilo of mega for a certain bit or byte amount.

If you want to convert a number of bits or bytes to a readable notation, like 18248932 to "17.4 MB".

Installation

$ npm install kilomega

Usage

You can include kilomega in three different ways:

1) For browsers, when you use a bundler:

import { kilomega } from 'kilomega';

2) For browsers, without the need to build or install kilomega:

const { kilomega } = await import('https://cdn.jsdelivr.net/gh/edwinm/kilomega@1.0/kilomega.js');

See dynamic-import.js in the example directory.

3) Or, for use in Node.js:

const { kilomega } = require('kilomega');

See example.js in the example directory.

Then call the kilomega function:

const result = kilomega(489382653442);
// result is: {
// 		amount: 455.7731127757579,
// 		iecPrefix: "gibi",
// 		iecSymbol: "Gi",
// 		prefix: "giga",
// 		symbol: "G",
// 	}

(489382653442 bytes is 455.77 gigabytes)

A complete practical example with number formatting for the specified locale (en-US) and with a specified number of digits (3):

const { kilomega } = require("kilomega");

function displayAmount(bytes) {
	const bytesize = kilomega(bytes);
	const intl = new Intl.NumberFormat("en-US", { maximumSignificantDigits: 3 });

	return `${intl.format(bytesize.amount)} ${bytesize.symbol}B`;
}

const result = displayAmount(28946022);
//=> 27.6 MB

(28946022 bytes is 27.6 megabytes)

API

kilomega( amount )

Returns an with the converted amount and corresponding prefixes.

amount

Type: number

The number of bits or bytes.

output

Type: { amount: number; iecPrefix: string; iecSymbol: string; prefix: string; symbol: string; }

The converted amount and the corresponding IS and IEC prefixes.

Tests

npm test

Related information

License

MIT © 2023 Edwin Martin

1.0.5

10 months ago

1.0.4

4 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago