JavaScript: formattare la dimensione dei file

JavaScript: formattare la dimensione dei file

In JavaScript è semplice formattare la dimensione di un file.

La soluzione è la seguente:


'use strict';

const formatFileSize = ( bytes, decimalPoint = 2 ) => {

    if( bytes === 0 ) return '0';

    const k = 1000,
        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( decimalPoint) ) + ' ' + sizes[ i ];
};

Esempio d'uso in un form di upload:


'use strict';

document.querySelector('#file').addEventListener('change', () => {
    if( this.files.length > 0 ) {
        console.log( formatFileSize( this.files[0].size ));
    }
});

Torna su