js内通用容量大小转换函数
时间: 2023-08-13 21:07:30 浏览: 49
以下是一个通用容量大小转换函数,可以将字节转换为各种容量单位(如 KB、MB、GB 等):
```javascript
function formatBytes(bytes, decimals = 2) {
if (bytes === 0) return '0 Bytes';
const k = 1024;
const dm = decimals < 0 ? 0 : decimals;
const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
const i = Math.floor(Math.log(bytes) / Math.log(k));
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
}
```
其中 `bytes` 是需要转换的字节数,`decimals` 是保留小数位数,默认为 2。`k` 是进制数,`sizes` 是各种单位的字符串数组,`i` 是根据字节数计算出的对应单位的下标。使用 `Math.log()` 和 `Math.floor()` 方法计算出需要转换的单位,使用 `parseFloat()` 方法将结果保留小数位并返回。示例如下:
```javascript
console.log(formatBytes(1024)); // 输出 "1 KB"
console.log(formatBytes(52428800)); // 输出 "50 MB"
console.log(formatBytes(1024 * 1024 * 1024)); // 输出 "1 GB"
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)