function formatBytes(bytes,decimals) { if(bytes == 0) return '0 Bytes'; var k = 1024, dm = decimals || 2, sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'], i = Math.floor(Math.log(bytes) / Math.log(k)); return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i]; } // Usage: // formatBytes(bytes,decimals) formatBytes(1024); // 1 KB formatBytes('1024'); // 1 KB formatBytes(1234); // 1.21 KB formatBytes(1234, 3); // 1.205 KB