export function calcTraffic(byte: number): string { if (byte < 1024) return `${byte} B` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} KB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} MB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} GB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} TB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} PB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} EB` byte /= 1024 if (byte < 1024) return `${formatNumString(byte)} ZB` byte /= 1024 return `${formatNumString(byte)} YB` } function formatNumString(num: number): string { let str = num.toFixed(2) if (str.length <= 5) return str if (str.length == 6) { str = num.toFixed(1) return str } else { str = Math.round(num).toString() return str } }