首页 > 编程知识 正文

js 数字格式化,js 数值格式化

时间:2023-05-04 10:38:01 阅读:222584 作者:1148

翻译自 Numeral.js

用它

在浏览器中

<script src="numeral.min.js"></script>

或者引用从cdnjs.com

<script src="http://cdnjs.cloudflare.com/ajax/libs/numeral.js/2.0.6/numeral.min.js"></script>

在Node.js中

npm install numeralvar numeral = require('numeral'); 创建

创建数字的实例。数字采用它转换为数字的数字或字符串。

var myNumeral = numeral(1000);var value = myNumeral.value();// 1000var myNumeral2 = numeral('1,000');var value2 = myNumeral2.value();// 1000 格式

数字可以格式化为货币,百分比,时间,甚至是带有小数位,数千和缩写的普通旧数字。您始终可以  创建自定义格式。

var string = numeral(1000).format('0,0');// '1,000'

Numbers

Currency

Bytes

Percentages

Time

Exponential

功能


该值始终可用。

var number = numeral(1000);var string = number.format('0,0');// '1,000'var value = number.value();// 1000

操作

并不是说你会经常使用它们,但是xfdsb需要它们时它们就在那里。

var number = numeral(1000);var added = number.add(10);// 1010

设置

设置数字对象的值。

var number = numeral();number.set(1000);var value = number.value();// 1000

差异

找出数字对象和值之间的差异

var number = numeral(1000), value = 100;var difference = number.difference(value);// 900

克隆

xfdsb在它时,继续克隆任何数字对象。

var a = numeral(1000);var b = numeral(a);var c = a.clone();var aVal = a.set(2000).value();// 2000var bVal = b.value();// 1000var cVal = c.add(10).value();// 1010 设置

默认格式

设置默认格式,以便您可以使用不带字符串的.format()。默认格式为'0,0'

var number = numeral(1000);number.format();// '1,000'numeral.defaultFormat('$0,0.00');number.format();// '$1,000.00'

自定义零和空格式

格式化数字值为0或null时设置自定义输出

var number = numeral(0);var nullNumber = numeral(null);numeral.zeroFormat('N/A');numeral.nullFormat('N/A');var zero = number.format('0.0')// 'N/A'var na = nullNumber.format('0.0')// 'N/A' 本地化

让我们到处都可以使用它!

// load a localenumeral.register('locale', 'fr', { delimiters: { thousands: ' ', decimal: ',' }, abbreviations: { thousand: 'k', million: 'm', billion: 'b', trillion: 't' }, ordinal : function (number) { return number === 1 ? 'er' : 'ème'; }, currency: { symbol: '€' }});// switch between localesnumeral.locale('fr');

由于我不熟悉地球上的每个地区,请随意通过提交拉取请求来创建您自己的语言环境文件。不要忘记创建语言环境文件(例如:locales / fr.js)和语言环境测试(例如:tests / locales / fr.js)。谢谢你的帮助。

格式

添加自己的自定义格式就像添加区域设置一样简单。

// load a formatnumeral.register('format', 'percentage', { regexps: { format: /(%)/, unformat: /(%)/ }, format: function(value, format, roundingFunction) { var space = numeral._.includes(format, ' %') ? ' ' : '', output; value = value * 100; // check for space before % format = format.replace(/s?%/, ''); output = numeral._.numberToFormat(value, format, roundingFunction); if (numeral._.includes(output, ')')) { output = output.split(''); output.splice(-1, 0, space + '%'); output = output.join(''); } else { output = output + space + '%'; } return output; }, unformat: function(string) { return numeral._.stringToNumber(string) * 0.01; }});// use your custom formatnumeral().format('0%'); 致谢

Numeral.js虽然不那么复杂,却受到Moment.js的启发并大量借用 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。