JavaScript将字节转换为常用的B、KB、MB、GB单位

Daming 2020-06-21
0条评论 305 次浏览
Daming 2020-06-210条评论 305 次浏览
function convertByte(limit) {
  let size = '';
  if (limit < 0.1 * 1024) {
    // 小于0.1KB,则转化成B
    size = `${limit.toFixed(2)}B`;
  } else if (limit < 0.1 * 1024 * 1024) {
    // 小于0.1MB,则转化成KB
    size = `${(limit / 1024).toFixed(2)}KB`;
  } else if (limit < 0.1 * 1024 * 1024 * 1024) {
    // 小于0.1GB,则转化成MB
    size = `${(limit / (1024 * 1024)).toFixed(2)}MB`;
  } else {
    // 其他转化成GB
    size = `${(limit / (1024 * 1024 * 1024)).toFixed(2)}GB`;
  }

  const sizeStr = `${size}`; // 转成字符串
  const index = sizeStr.indexOf('.'); // 获取小数点处的索引
  const dou = sizeStr.substr(index + 1, 2); // 获取小数点后两位的值
  // eslint-disable-next-line eqeqeq
  if (dou == '00') {
    // 判断后两位是否为00,如果是则删除00
    return sizeStr.substring(0, index) + sizeStr.substr(index + 3, 2);
  }
  return size;
}
0

发表评论

电子邮件地址不会被公开。