← Snippets

Bytes to Size

function bytesToSize(bytes) {
  if (bytes === 0) return '0 B'

  var k = 1024
  var sizes = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']
  var i = Math.floor(Math.log(bytes) / Math.log(k))
  return (bytes / Math.pow(k, i)).toPrecision(3) + ' ' + sizes[i]
}

// bytesToSize(12)
// "12 B"

// bytesToSize(234234)
// "229 KB"

// bytesToSize(98223445)
// "94.7 MB"
Discuss on Twitter