`

js格式化文件大小, 输出成带单位的字符串工具

    博客分类:
  • js
阅读更多
/**
		 * 格式化文件大小, 输出成带单位的字符串
		 * @method formatSize
		 * @grammar formatSize( size ) => String
		 * @grammar formatSize( size, pointLength ) => String
		 * @grammar formatSize( size, pointLength, units ) => String
		 * @param {Number} size 文件大小
		 * @param {Number} [pointLength=2] 精确到的小数点数。
		 * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节,到千字节,一直往上指定。如果单位数组里面只指定了到了K(千字节),同时文件大小大于M, 此方法的输出将还是显示成多少K.
		 * @example
		 * console.log( formatSize( 100 ) );    // => 100B
		 * console.log( formatSize( 1024 ) );    // => 1.00K
		 * console.log( formatSize( 1024, 0 ) );    // => 1K
		 * console.log( formatSize( 1024 * 1024 ) );    // => 1.00M
		 * console.log( formatSize( 1024 * 1024 * 1024 ) );    // => 1.00G
		 * console.log( formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) );    // => 1024MB
		 */
		formatSize = function(size, pointLength, units) {
			var unit;
			units = units || [ 'B', 'K', 'M', 'G', 'TB' ];
			while ((unit = units.shift()) && size > 1024) {
				size = size / 1024;
			}
			return (unit === 'B' ? size : size.toFixed(pointLength || 2))
					+ unit;
		};
1
0
分享到:
评论

相关推荐

    html转pdf、字符串转pdf

    在IT行业中,将HTML文档或字符串转换为PDF格式是一项常见的需求。这主要涉及到网页内容的持久化和跨平台分享,确保用户在不同设备上能够一致地查看内容。本篇文章将详细探讨如何使用PD4ML库进行HTML转PDF以及字符串...

    pretty-bytes-将字节转换为一个人类可读的字符串:1337→1.34kB

    对于Node.js开发来说,这是一个非常实用的工具,特别是在需要处理文件大小或者内存占用等涉及单位转换的情景下。 总的来说,`pretty-bytes`是Node.js开发中的一个明星库,它实现了字节到人性化字符串的高效转换,...

    python格式化转换,实用小工具

    4. **JSON格式化**:JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Python中,`json`模块提供了`dumps()`和`loads()`函数,分别用于将Python对象...

    json,xml格式化html显示

    3. 格式化输出:为了美观,可以添加缩进、换行等,使输出看起来更加整洁。对于JSON,可以利用`JSON.stringify()`的第二个参数来控制缩进;XML则可能需要自定义算法来处理元素的嵌套关系。 4. 颜色高亮:为了突出...

    dateformatjs一个超轻量级的JS日期处理库

    总的来说,`dateformat.js` 是一个强大且实用的日期处理工具,它提供了丰富的日期格式化选项,简单易用的API,以及良好的国际化支持。无论是在小规模的个人项目还是大型的企业应用中,都能找到它的一席之地。

    gulprev2给资源文件添加文件指纹

    在实际使用`gulp-rev2`时,开发者需要首先安装插件,然后在Gulpfile.js中配置任务,指定要处理的文件路径和输出格式。插件会自动处理文件并更新引用。`gulp-rev2-master`这个压缩包很可能包含了插件源码和示例配置,...

    js_bigdecimal_1_0_1.zip

    3. **格式化输出**:提供格式化数字的功能,如控制小数点后的位数,添加千位分隔符等。 4. **舍入模式**:支持多种舍入策略,如四舍五入、向上取整、向下取整等。 5. **转换操作**:可以从字符串或其他类型转换为...

    C#json与Xml相互转换例子

    XML则是一种更为结构化的标记语言,适用于复杂的数据表示和文档存储,但其文件大小通常比JSON大。 在C#中,我们可以利用.NET Framework或.NET Core提供的内置库进行JSON和XML的转换。对于JSON操作,.NET框架引入了`...

    前端json2的js包。

    2. `JSON.parse()`: 这个方法用于将JSON字符串解析成JavaScript对象。它是处理服务器返回的JSON数据的关键工具。例如: ```javascript var jsonString = '{"name": "John", "age": 30}'; var obj = JSON.parse...

    makeUp:从JSX代码中过滤字符串

    在这个场景中,“从JSX代码中过滤字符串”可能指的是对JSX元素中的文本内容进行处理,比如提取、替换或格式化字符串。 在React开发中,JSX被广泛用来声明UI组件。例如,你可能会看到这样的代码: ```jsx function ...

    moment.js luxon.js

    在IT行业中,日期和时间处理是开发过程中必不可少的一部分。`moment.js` 和 `luxon.js` 是两个广泛...而文件名列表中的`i18n`可能是指包含这些库的国际化资源文件,例如不同语言的配置和字符串,用于实现多语言功能。

    PB解析和生成JSON

    - `demo.pbw`可能是一个PB的 Wire 格式文件,Wire格式是Protocol Buffers的一种更高效的编码方式,用于减少传输和存储的数据大小。 处理这些文件通常需要使用protobuf编译器(protoc)来编译`.proto`文件生成对应的...

    前端开源库-vinyl-map2

    3. **代码格式化**:可以应用Prettier或ESLint等代码格式化工具,确保代码风格一致,提升代码可读性。 4. **预处理**:在构建过程中,可以使用vinyl-map2处理Sass、Less等预处理器的文件,将其转换为CSS。 5. **...

    yuicompressor安装文件

    1. **代码压缩**:YUICompressor的主要功能是对JavaScript和CSS代码进行压缩,通过删除多余的空格、注释和换行,合并相邻的字符串常量,以及应用其他代码优化策略,如变量名混淆,进一步减小文件大小。 2. **错误...

    php+js图片验证码

    3. 写入验证码:在图像上绘制随机字符串,通过调整字体角度、位置和颜色增加难度,防止自动化工具轻易识别。 4. 混淆处理:添加干扰线、噪点、扭曲等效果,进一步提高识别难度。 5. 输出图像:将生成的图像发送到...

    php常用工具类

    字符串格式化在日志记录、输出和数据处理中很常见。例如,`formatDate()`可以用于将日期转换为指定格式,`padZero()`可以将数字前面补零,使其达到指定长度。 7. **其他常用功能** - `encodeDecode()`:提供Base...

    bytessize:简单的JS可读字节大小

    在JavaScript编程中,处理文件大小或者数据传输时,我们经常需要将字节大小转换成人类可读的形式,如KB、MB、GB等。...它结合了JavaScript中的基本数学操作、单位转换以及字符串格式化等概念,是日常开发中的实用工具。

    C#基类库(苏飞版)

    app消息格式化类,返加字符串帮助类 ResourceManager C#一个操作Resource的帮助类 ResourceManagerWrapper Resources 操作Resources的帮助类,使用Api的方式 Sample.xml 11.XML操作类 XmlHelper 操作Xml文档的...

    moment.min.zip

    在`moment.min.js`这个文件中,包含了Moment.js库的最小化版本,目的是减小文件大小,提高网页加载速度,适用于生产环境。它去掉了不必要的代码和注释,以达到优化性能的目的。 在实际开发中,你可以直接在HTML中...

    bignumber.js-master.zip

    除了基本的算术运算,bignumber.js还支持格式化输出、转换为字符串、小数位数控制等功能,满足复杂的计算需求。 总结来说,bignumber.js是JavaScript开发中处理大数和高精度计算的得力工具。它通过创建一个新的数据...

Global site tag (gtag.js) - Google Analytics