Displaying the size of files is one thing but formatting them so they're actually understandable by humans, Another.
I've found this useful snippet by inkdeep but corrected the bit/byte units, used a different rounding function and cleaned up the if blocks.
 function humanize_filesize(fs) {
   if (fs >= 1073741824) { return round_number(fs / 1073741824, 2) + ' GB'; }
   if (fs >= 1048576)    { return round_number(fs / 1048576, 2) + ' MB'; }
   if (fs >= 1024)       { return round_number(fs / 1024, 0) + ' KB'; }
   return fs + ' B';
 };   This snippet uses round_numbers() which I've written in another post.

 
