Socket
Socket
Sign inDemoInstall

filesize

Package Overview
Dependencies
0
Maintainers
1
Versions
120
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    filesize

JavaScript library to generate a human readable String describing the file size


Version published
Weekly downloads
9.5M
decreased by-1.93%
Maintainers
1
Created
Weekly downloads
 

Package description

What is filesize?

The filesize npm package is a library designed to provide simple file size conversion and formatting. It allows users to convert raw file size numbers into human-readable strings, with support for multiple units and customization options. This can be particularly useful in applications where file sizes need to be displayed to users in a format that is easy to understand.

What are filesize's main functionalities?

Basic file size formatting

Converts a file size in bytes to a human-readable string using the most appropriate unit. In this example, 1024 bytes are converted to '1 KB'.

"const filesize = require('filesize');
console.log(filesize(1024)); // '1 KB'"

Customizing the output

Allows customization of the output format, including rounding and the spacer between the number and the unit. This example shows no rounding and removes the space between the number and the unit.

"const filesize = require('filesize');
console.log(filesize(1024, {round: 0, spacer: ''})); // '1KB'"

Using different units

Supports using different unit standards, such as the International Electrotechnical Commission (IEC) standard, which uses 'KiB' instead of 'KB' for 1024 bytes.

"const filesize = require('filesize');
console.log(filesize(1024, {standard: 'iec'})); // '1 KiB'"

Other packages similar to filesize

Changelog

Source

6.3.0

21 April 2021

  • [feature suggestion] add roundingMethod option #131
  • add roundingMethod option f2acf64
  • Version bump to release roundingMethod option 26735f6
  • Updating CHANGELOG.md e1448a6

Readme

Source

filesize.js

build status downloads CDNJS version

filesize.js provides a simple way to get a human readable file size string from a number (float or integer) or string.

Optional settings

filesize() accepts an optional descriptor Object as a second argument, so you can customize the output.

base

(number) Number base, default is 2

bits

(boolean) Enables bit sizes, default is false

exponent

(number) Specifies the symbol via exponent, e.g. 2 is MB for base 2, default is -1

fullform

(boolean) Enables full form of unit of measure, default is false

fullforms

(array) Array of full form overrides, default is []

locale (overrides 'separator')

(string || boolean) BCP 47 language tag to specify a locale, or true to use default locale, default is ""

localeOptions (overrides 'separator', requires string for 'locale' option)

(object) Dictionary of options defined by ECMA-402 (Number.prototype.toLocaleString). Requires locale option to be explicitly passed as a string, otherwise is ignored.

output

(string) Output of function (array, exponent, object, or string), default is string

pad

(boolean) Decimal place end padding, default is false

round

(number) Decimal place, default is 2

separator

(string) Decimal separator character, default is .

spacer

(string) Character between the result and symbol, default is " "

standard

(string) Standard unit of measure, can be iec or jedec, default is jedec; can be overruled by base

symbols

(object) Dictionary of SI/JEDEC/IEC symbols to replace for localization, defaults to english if no match is found

unix

(boolean) Enables unix style human readable output, e.g ls -lh, default is false

roundingMethod

(string) Rounding method, can be round, floor, or ceil, default is round

Examples

filesize(500);                        // "500 B"
filesize(500, {bits: true});          // "4 Kb"
filesize(265318, {base: 10});         // "265.32 kB"
filesize(265318);                     // "259.1 KB"
filesize(265318, {round: 0});         // "259 KB"
filesize(265318, {output: "array"});  // [259.1, "KB"]
filesize(265318, {output: "object"}); // {value: 259.1, symbol: "KB", exponent: 1, unit: "KB"}
filesize(1, {symbols: {B: "Б"}});     // "1 Б"
filesize(1024);                       // "1 KB"
filesize(1024, {exponent: 0});        // "1024 B"
filesize(1024, {output: "exponent"}); // 1
filesize(265318, {standard: "iec"});  // "259.1 KiB"
filesize(265318, {standard: "iec", fullform: true}); // "259.1 kibibytes"
filesize(12, {fullform: true, fullforms: ["байтов"]});  // "12 байтов"
filesize(265318, {separator: ","});   // "259,1 KB"
filesize(265318, {locale: "de"});   // "259,1 KB"

Partial Application

filesize.partial() takes the second parameter of filesize() and returns a new function with the configuration applied upon execution. This can be used to reduce Object creation if you call filesize() without caching the descriptor in lexical scope.

const size = filesize.partial({standard: "iec"});

size(265318); // "259.1 KiB"

How can I load filesize.js?

filesize.js supports AMD loaders (require.js, curl.js, etc.), node.js & npm (npm install filesize), or using a script tag.

An ES6 version is bundled with an npm install, but requires you load it with the full path, e.g. require(path.join(__dirname, 'node_modules', 'filesize', 'lib', 'filesize.es6.js')).

License

Copyright (c) 2021 Jason Mulligan Licensed under the BSD-3 license.

Keywords

FAQs

Last updated on 21 Apr 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc