Форматиране на числа с помощта на пипове в Angular
С помощта на пипа DecimalPipe можем
да форматираме числа. В първия параметър
на пипа подаваме минималния брой
цифри в цялата част. Във втория параметър
посочваме минималния брой цифри в
дробната част. В третия незадължителен
параметър задаваме максималния брой
цифри в дробната част.
Въпреки че нашият пип се нарича
DecimalPipe, за да го извикаме пишем
така: number.
Нека опитаме на практика. В класа на компонента зададем следното число:
export class AppComponent {
num: number = 18;
}
Пример
Нека изведем нашето число така, че в
неговата цяла част да има две цифри. Като
минималния брой цифри в дробната част
ще бъде 1:
<div>{{ num | number:'2.1' }}</div>
Резултат от изпълнението на кода:
<div>18.0</div>
Пример
Сега нека зададем, че в дробната част на нашето число да се показват две цифри:
<div>{{ num | number:'2.2' }}</div>
Резултат от изпълнението на кода:
<div>18.00</div>
Пример
Нека зададем ново число:
export class AppComponent {
num: number = 18.67899;
}
И го изведем в HTML шаблона така, че в дробната част да се показват максимално две цифри:
<div>{{ num | number:'2.1-2' }}</div>
Резултат от изпълнението на кода:
<div>18.68</div>
Пример
Сега нека форматираме нашето число така, че в неговата цяла част да има три цифри. А в дробната част да се покажат пет цифри:
<div>{{ num | number:'3.5-6' }}</div>
Резултат от изпълнението на кода:
<div>018.67899</div>
Пример
Нека опитаме да изведем минималния брой цифри в дробната част, който надвишава зададения брой в числото. В нашия случай ще изведем шест цифри:
<div>{{ num | number:'3.6-8' }}</div>
В резултат на изпълнението на кода ще видим,
че пипът DecimalPipe добави нула
към дробната част:
<div>018.678990</div>
Практически задачи
Дадено число:
num: number = 15;
Форматирайте го в следния вид:
'015.000'
Дадено число:
num: number = 12.345;
Форматирайте го в следния вид:
'0012.345'
Дадено число:
num: number = 12.345;
Форматирайте го в следния вид:
'12.3'
Дадено число:
num: number = 12.345;
Форматирайте го в следния вид:
'012.34500'
Дадено число:
num: number = -7.261;
Форматирайте го в следния вид:
'-007.3'
Дадено число:
num: number = 100.261923;
Форматирайте го в следния вид:
'100.9226130'
Дадено число:
num: number = 100.926613;
Форматирайте го в следния вид:
'0100.93'