SOURCE

function getSizeView(size, isUit = false,isWin) {
  if (!size || size === '0') {
    return '0'
  }
  let sizeNum = isWin ? 1024 : 1000
  let sizeInt = parseSize(parseInt(size),isWin)
  let uit = 'B'
  if (sizeInt >= sizeNum) {
    sizeInt = sizeInt / sizeNum
    uit = 'KB'
    if (sizeInt >= sizeNum) {
      sizeInt = sizeInt / sizeNum
      uit = 'MB'
      if (sizeInt >= sizeNum) {
        sizeInt = sizeInt / sizeNum
        uit = 'GB'
        if (sizeInt >= sizeNum) {
          sizeInt = sizeInt / sizeNum
          uit = 'TB'
        }
      }
    }
  }
  return sizeInt.toFixed(0) + (isUit ? uit : '')
}

// 字节数ceil
function parseSize(size,isWin) {
  const diffNum = isWin ? 1 : 1000 * 1000 * 1000
  const parseIndex = Math.ceil(Math.log(size / diffNum) / Math.log(2))
  const parseSize = Math.pow(2, parseIndex) * diffNum
  return parseSize
}

let result =  getSizeView(512000000000,true,false)
console.log(result)
console 命令行工具 X clear

                    
>
console