Skip to content

Convert bytes to a human readable string: 1337 → 1.34 kB

License

Notifications You must be signed in to change notification settings

prodialabs/pretty-bytes

 
 

Repository files navigation

pretty-bytes Build Status

Convert bytes to a human readable string: 13371.34 kB

Useful for displaying file sizes for humans.

Note that it uses base-10 (e.g. kilobyte). Read about the difference between kilobyte and kibibyte.

Install

$ npm install pretty-bytes

Usage

const prettyBytes = require('pretty-bytes');

prettyBytes(1337);
//=> '1.34 kB'

prettyBytes(100);
//=> '100 B'

// Display with units of bits
prettyBytes(1337, {bits: true});
//=> '1.34 kbit'

// Display file size differences
prettyBytes(42, {signed: true});
//=> '+42 B'

// Localized output using German locale
prettyBytes(1337, {locale: 'de'});
//=> '1,34 kB'

API

prettyBytes(number, [options])

number

Type: number

The number to format.

options

Type: object

signed

Type: boolean
Default: false

Include plus sign for positive numbers. If the difference is exactly zero a space character will be prepended instead for better alignment.

bits

Type: boolean
Default: false

Format the number as bits instead of bytes. This can be useful when, for example, referring to bit rate.

locale

Type: boolean string
Default: false (No localization)

  • If true: Localize the output using the system/browser locale.
  • If string: Expects a BCP 47 language tag (For example: en, de, …)

Note: Localization should generally work in browsers. Node.js needs to be built with full-icu or system-icu. Alternatively, the full-icu module can be used to provide support at runtime.

Related

License

MIT © Sindre Sorhus

About

Convert bytes to a human readable string: 1337 → 1.34 kB

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 92.9%
  • TypeScript 7.1%