Format Bytes

Format Bytes format bytes link

Full documentation: https://webawesome.com/docs/components/format-bytes

<wa-format-bytes> Stable Since 2.0

Formats a number of bytes as a human-readable string with the appropriate unit, such as kB, MB, or GB. Supports both byte and bit units with configurable locale.

<div class="format-bytes-overview">
  The file is <wa-format-bytes value="1000"></wa-format-bytes> in size. <br /><br />
  <wa-input type="number" value="1000" label="Number to Format" style="max-width: 180px;"></wa-input>
</div>

<script>
  const container = document.querySelector('.format-bytes-overview');
  const formatter = container.querySelector('wa-format-bytes');
  const input = container.querySelector('wa-input');

  input.addEventListener('input', () => (formatter.value = input.value || 0));
</script>

Examples examples link

Formatting Bytes formatting bytes link

Set the value attribute to a number to get the value in bytes.

<wa-format-bytes value="12"></wa-format-bytes><br />
<wa-format-bytes value="1200"></wa-format-bytes><br />
<wa-format-bytes value="1200000"></wa-format-bytes><br />
<wa-format-bytes value="1200000000"></wa-format-bytes>

Formatting Bits formatting bits link

To get the value in bits, set the unit attribute to bit.

<wa-format-bytes value="12" unit="bit"></wa-format-bytes><br />
<wa-format-bytes value="1200" unit="bit"></wa-format-bytes><br />
<wa-format-bytes value="1200000" unit="bit"></wa-format-bytes><br />
<wa-format-bytes value="1200000000" unit="bit"></wa-format-bytes>

Localization localization link

Use the lang attribute to set the number formatting locale.

<wa-format-bytes value="12" lang="de"></wa-format-bytes><br />
<wa-format-bytes value="1200" lang="de"></wa-format-bytes><br />
<wa-format-bytes value="1200000" lang="de"></wa-format-bytes><br />
<wa-format-bytes value="1200000000" lang="de"></wa-format-bytes>

Importing importing link

If you’re using the autoloader or a hosted project, components load on demand — no manual import needed. To cherry-pick a component manually, use one of the following snippets.

**CDN**

Import this component directly from the CDN:

import 'https://ka-f.webawesome.com/webawesome@3.7.0/components/format-bytes/format-bytes.js';

**npm**

After installing Web Awesome via npm, import this component:

import '@awesome.me/webawesome/dist/components/format-bytes/format-bytes.js';

**Self-Hosted**

If you’re self-hosting Web Awesome, import this component from your server:

import './webawesome/dist/components/format-bytes/format-bytes.js';

**React**

To import this component for React 18 or below, use the following code:

import WaFormatBytes from '@awesome.me/webawesome/dist/react/format-bytes/index.js';

Attributes & Properties attributes properties link

Learn more about attributes and properties.

Name Description Reflects  
`css` `CSSResultGroup \| undefined` One or more CSSResultGroup to include in the component’s shadow root. Host styles are automatically prepended. Type    
`display` display `‘long’ \| ‘short’ \| ‘narrow’` Determines how to display the result, e.g. “100 bytes”, “100 b”, or “100b”. Type Default ‘short’    
`unit` unit `‘byte’ \| ‘bit’` The type of unit to display. Type Default ‘byte’    
`value` value `number` The to format in bytes. Type number Default 0    

Need a hand? Report a bug Ask for help