formatBytes.ts 408 B

12345678910111213
  1. function formatBytes(bytes: number, decimals: number = 0) {
  2. const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
  3. if (bytes === 0) return [0, sizes[0]];
  4. const k = 1024;
  5. const dm = decimals < 0 ? 0 : decimals;
  6. const i = Math.floor(Math.log(bytes) / Math.log(k));
  7. return [parseFloat((bytes / Math.pow(k, i)).toFixed(dm)), sizes[i]];
  8. }
  9. export default formatBytes;