记录用js实现计算文件大小的函数:
function calculateFileSize(size, isInteger = false) {
const B = 1024
const KB = Math.pow(1024, 2)
const MB = Math.pow(1024, 3)
const GB = Math.pow(1024, 4)
if (isInteger) {
// 截取为整数
if (size < B) {
return `${size}B`
} else if (size < KB) {
return `${(size / B).toFixed(0)}KB`
} else if (size < MB) {
return `${(size / KB).toFixed(0)}MB`
} else if (size < GB) {
return `${(size / MB).toFixed(0)}GB`
} else {
return `${(size / GB).toFixed(0)}TB`
}
} else {
// 保留小数位
if (size < B) {
return `${size}B`
} else if (size < KB) {
return `${(size / B).toFixed(0)}KB`
} else if (size < MB) {
return `${(size / KB).toFixed(1)}MB`
} else if (size < GB) {
return `${(size / MB).toFixed(2)}GB`
} else {
return `${(size / GB).toFixed(3)}TB`
}
}
}