Numeral.js - рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд╕реНрддрдХрд╛рд▓рдп

рдПрдбрдо рдбреНрд░реЗрдкрд░, рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдФрд░ рд╡реЗрдм рдбрд┐рдЬрд╛рдЗрдирд░, рдХреЛ рдПрдХ рд╕рдорд╛рди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рджреНрд╡рд╛рд░рд╛ рддрд╛рд░реАрдЦ рдФрд░ рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╛рд░реВрдкрдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред Numeral.js рдЖрдкрдХреЛ рджрд╢рдорд▓рд╡ рд╕реНрдерд╛рдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛, рднрд┐рдиреНрдирд╛рддреНрдордХ рднрд╛рдЧ рдФрд░ рдЕрдВрдХреЛрдВ рдХреЗ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд╛рдЬрдХ рд╡рд░реНрдг, рдореБрджреНрд░рд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░реВрдк, рдкреНрд░рддрд┐рд╢рдд, рд╕рдордп, рд▓рд╛рдЦреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо, рдЕрд░рдмреЛрдВ, рдореЗрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ рдЖрджрд┐ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдореМрдЬреВрджрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╕реЗ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкреБрд╕реНрддрдХрд╛рд▓рдп MIT рдХреЗ рддрд╣рдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрдд рд╣реИред

рдиреНрдпреВрдЯреНрд░рд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдФрд░ Node.js. рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрдиреЗрдХреНрд╢рди:

Cdnjs.com рд╕реЗ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ:
<script src="//cdnjs.cloudflare.com/ajax/libs/numeral.js/1.4.1/numeral.min.js"></script> 


Node.js рдореЗрдВ:
 npm install numeral 

 var numeral = require('numeral'); 


рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
 var string = numeral(1000).format('0,0'); // '1,000' 


рд╕рдВрдЦреНрдпрд╛

рд╕рдВрдЦреНрдпрд╛рдкреНрд░рд╛рд░реВрдкрдкрдВрдХреНрддрд┐
10000'0,0.0000'10,000.0000
10000.23'0.0'10,000
-10,000'0,0.0'-10,000.0
10000.1234'0.000'10000.123
10000.1234'0 [ред] 00000'резреж,режрежреж.резреи,рейрекреж
-10,000'(0,0.0000)'(10,000.0000)
-0.23'.00'-.23
-0.23'(.00)'(.23)
0.23'.режреж,режрежреж'.реирей,режрежреж
0.23'0.0 [0000]'0.23
1230974'0.0a'1.2 рдореАрдЯрд░
1460'0 рдП'1 рдХреЗ
-104,000'0A'-104k
1'0o'1
52'0o'52 рд╡реЗрдВ
23'0o'23 рд╡реЗрдВ
100'0o'100 рд╡реАрдВ

рдореБрджреНрд░рд╛

рд╕рдВрдЦреНрдпрд╛рдкреНрд░рд╛рд░реВрдкрдкрдВрдХреНрддрд┐
1000.234'$ 0,0.00'$ 1,000.23
1000.2'0,0 [ред] 00 $'$ 1,000.20
1001'$ 0,0 [ред] 00'$ 1.001
-1000.234'($ 0,0)'($ 1,000)
-1000.234'$ 0.00'- $ 1000.23
1230974'($ 0.00 рдП)'$ 1.23 рдореАрдЯрд░

рдмрд╛рдЗрдЯреНрд╕

рд╕рдВрдЦреНрдпрд╛рдкреНрд░рд╛рд░реВрдкрдкрдВрдХреНрддрд┐
100'0b'100B
2048'0 рдмреА'2 рдХреЗрдмреА
7884486213'0.0b'7.3GB
3467479682787'0.000 рдмреА'3.154 рдЯреАрдмреА

рдмреНрдпрд╛рдЬ

рд╕рдВрдЦреНрдпрд╛рдкреНрд░рд╛рд░реВрдкрдкрдВрдХреНрддрд┐
1'0%'100%
.репрен,рекрео,ренрео,реирейрек'0.000%'97,488%
-0.43'0%'-43%
0.43'(0.000%)'43.000%

рд╕рдордп

рд╕рдВрдЦреНрдпрд╛рдкреНрд░рд╛рд░реВрдкрдкрдВрдХреНрддрд┐
25'00: 00: 00 '00:00:25
238'00: 00: 00 '00:03:58
63,846'00: 00: 00 '17:44:06

Rasformatirovanie

 var string = numeral().unformat('($10,000.00)'); // '-10000' 

рдкрдВрдХреНрддрд┐рд╕рдорд╛рд░реЛрд╣рд╕рдВрдЦреНрдпрд╛
'10, 000.123 '.рдлреЙрд░реНрдордлреЙрд░реНрдо ('10, 000.123 ')10000.123
'.резреи,рейрекрел'.unformat ('0.12345').резреи,рейрекрел
'1.23m'.unformat ('1.23m')1230000
'23'.рдлреЙрд░реНрдордлреЙрд░реНрдо ('23 рд╡реЗрдВ')23
'$ 10,000.00'.unformat ('$ 10,000.00')10000
'100B'.unformat ('100 рдмреА')100
'3.154TB'.unformat ('3.154TB')3467859674006
'-76%'.unformat ('- 76%')-0.76
'02:23:57'.рдлреЙрд░реНрдордлреЙрд░реНрдо ('2:23:57')8637

рдЕрдВрдХрдЧрдгрд┐рдд

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

рдХреЛрд╕рдорд╛рд░реЛрд╣рдХреЗ рдмрд╛рдж
1000.add (100)ред1100
1100.Subtract (100)1000
1000ред рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ (100)100000
100000.Divide (100)1000

рд╢реВрдиреНрдп рдорд╛рди рдХреЛ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рдирд╛

 var number = numeral(0); numeral.zeroFormat('N/A'); var zero = number.format('0.0') // 'N/A' 

рд╕рдВрдЦреНрдпрд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛


рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛

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

рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛

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

рдЕрдВрддрд░

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

рдХреНрд▓реЛрдирд┐рдВрдЧ

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


рд╕реНрдерд╛рдиреАрдпрдХрд░рдг


рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдмреБрдирд┐рдпрд╛рджреА рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдХрд╛рд░реНрдп рд╣реИрдВред рд░реВрд╕реА рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрд▓реНрдкрд╡рд┐рдХрд╕рд┐рдд рд╕рдорд░реНрдерди рд╣реИред
 // load a language numeral.language('fr', { delimiters: { thousands: ' ', decimal: ',' }, abbreviations: { thousand: 'k', million: 'm' }, ordinal : function (number) { return number === 1 ? 'er' : '├иme'; }, currency: { symbol: 'тВм' } }); // switch between languages numeral.language('fr'); 

рд╕рдВрджрд░реНрдн


рдЧрд┐рдердм ред рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ ред

Source: https://habr.com/ru/post/In163321/


All Articles