Neste artigo você vai aprender a como converter tamanho de arquivo em bytes, ou seja, deixar essa informação de fácil leitura para humanos
Fala programador(a), beleza? Bora aprender mais sobre unidades de tamanho de arquivo com JavaScript!
Há um famoso snippet na internet, que nos permite conveter bytes para a representação correta para humanos
Ou seja, se estiver com unidades para mega bytes, a representação será em MB, se for giga bytes, terá um GB e assim por diante
Podemos até configurar se a representação é feita por 1000 ou 1024
A função é esta:
function humanFileSize(bytes, si=false, dp=1) { const thresh = si ? 1000 : 1024; if (Math.abs(bytes) < thresh) { return bytes + ' B'; } const units = si ? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] : ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']; let u = -1; const r = 10**dp; do { bytes /= thresh; ++u; } while (Math.round(Math.abs(bytes) * r) / r >= thresh && u < units.length - 1); return bytes.toFixed(dp) + ' ' + units[u]; } console.log(humanFileSize(242342423)) // 231.4 GiB console.log(humanFileSize(6000, true)) // 6.0 kB console.log(humanFileSize(1000000)) // 976.6 KiB console.log(humanFileSize(1000000, true)) // 1.0MB console.log(humanFileSize(200000000000000000, true)) // 200.0 PB
Os argumentos da função fazem o seguinte:
- bytes: Quantidade de bytes do arquivo;
- si: Se true temos valores por 1000, se não, por 1024, padrão SI ou IEC, respectivamente;
- dp: Número de casas decimais para serem exibidas;
Dentro da função temos a leitura dos bytes, e também a conversão dos mesmos, para uma alta lista de possibilidades
Dependendo do tamanho do arquivo você entrará nas diferentes caregorias, como: KB, MB, GB, TB e outras
Deixe um comentário contando o que achou deste artigo 🙂
Quer aprender mais sobre JavaScript? Confira o vídeo abaixo:
Conclusão
Neste artigo você viu como converter tamanho de arquivo em bytes
Utilizamos uma função famosa na internet que faz este trabalho para nós
Ela nos permite configurar qual o padrão que precisamos (SI ou IEC) e também a quantidade de casas decimais que serão exibidas
Está buscando a sua primeira vaga como Programador? Confira o nosso treinamento completo clicando aqui.
Uma plataforma de cursos com projetos completos, comunidade de alunos e muito mais!
Há também o nosso canal no YouTube, com muito conteúdo gratuito de qualidade!