Bytes utility

NPM Version NPM Downloads Build Status Test Coverage

Utility to parse a string bytes (ex: 1TB) to bytes (1099511627776) and vice-versa.

Installation

This is a Node.js module available through the npm registry. Installation is done using the npm install command:

$ npm install bytes

Usage

var bytes = require('bytes');

bytes.format(number value, [options]): string|null

Format the given value in bytes into a string. If the value is negative, it is kept as such. If it is a float, it is rounded.

Arguments

Name
Type
Description

value

number

Value in bytes

options

Object

Conversion options

Options

Property
Type
Description

decimalPlaces

numbernull

Maximum number of decimal places to include in output. Default value to 2.

fixedDecimals

booleannull

Whether to always display the maximum number of decimal places. Default value to false

thousandsSeparator

stringnull

Example of values: ' ', ',' and .... Default value to ''.

unit

stringnull

The unit in which the result will be returned (B/KB/MB/GB/TB). Default value to '' (which means auto detect).

unitSeparator

stringnull

Separator to use between number and unit. Default value to ''.

Returns

Name
Type
Description

results

stringnull

Return null upon error. String value otherwise.

Example

bytes(1024);
// output: '1KB'

bytes(1000);
// output: '1000B'

bytes(1000, {thousandsSeparator: ' '});
// output: '1 000B'

bytes(1024 * 1.7, {decimalPlaces: 0});
// output: '2KB'

bytes(1024, {unitSeparator: ' '});
// output: '1 KB'

bytes.parse(string|number value): number|null

Parse the string value into an integer in bytes. If no unit is given, or value is a number, it is assumed the value is in bytes.

Supported units and abbreviations are as follows and are case-insensitive:

  • b for bytes

  • kb for kilobytes

  • mb for megabytes

  • gb for gigabytes

  • tb for terabytes

The units are in powers of two, not ten. This means 1kb = 1024b according to this parser.

Arguments

Name
Type
Description

value

stringnumber

String to parse, or number in bytes.

Returns

Name
Type
Description

results

numbernull

Return null upon error. Value in bytes otherwise.

Example

bytes('1KB');
// output: 1024

bytes('1024');
// output: 1024

bytes(1024);
// output: 1024

License

MIT

Last updated