source

각도 2를 사용하여 인도 형식으로 숫자 표시

lovecheck 2022. 10. 19. 21:12
반응형

각도 2를 사용하여 인도 형식으로 숫자 표시

다음과 같이 쉼표로 숫자를 인쇄하고 싶다.thousands,lacs,crores세퍼레이터.예:

     10,000 - ten thousand
   1,00,000 - 1 lakh
  10,00,000 - 10 lakh
1,00,00,000 - 1 crore

Angular의 숫자 파이프를 사용하여 쉼표로 구분된 값을 구현했지만 제대로 출력되지 않아 다음과 같이 표시됩니다.1,000,000 - 10 lakh.

angular/javascript를 사용하여 위의 기능을 구현하려면 어떻게 해야 합니까, 아니면 angular에 이를 위한 파이프가 있습니까?

.toLocalString()을 사용할 수 있습니다.

toLocaleString() 메서드는 이 번호를 언어별로 나타내는 문자열을 반환합니다.

var tenK= 10000;
var oneL = 100000;
var tenL = 1000000;
var oneCr = 10000000;
console.log(tenK.toLocaleString('en-IN'));
console.log(oneL.toLocaleString('en-IN'));
console.log(tenL.toLocaleString('en-IN'));
console.log(oneCr.toLocaleString('en-IN'));

다음과 같이 할 수 있습니다.

localeString이 경우 로케일을 지정해야 합니다.

let num1 = 1000;
let num2 = 10000;
let num3 = 1000000;

console.log(num1.toLocaleString('en-IN'));
console.log(num2.toLocaleString('en-IN'));
console.log(num3.toLocaleString('en-IN'));

Javascript에서는 다음과 같은 정규 표현을 사용할 수도 있습니다.

formatNumber = (num)=>{
    return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
var formattedNumber = formatNumber(10000000);
console.log(formattedNumber);

파이프를 올바른 방법으로 사용하셨기를 바랍니다.

하지만 확인차 통화 파이프는

 {{price|currency:'INR':true}}

다음은 각도별 통화에 대한 골격 구문입니다.

{{ value_expression | currency [ : currencyCode [ : display [ : digitsInfo [ : locale ] ] ] ] }}

이것을 실현하기 위한 실장은 다음과 같습니다.

사용자 정의 파이프 만들기:

import {Inject, Pipe, PipeTransform} from '@angular/core';

@Pipe({
  name: 'currencyFormat'
})
export class CurrencyFormatPipe implements PipeTransform {
  constructor() {
  }

  transform(value: any, ...args: any[]): any {
    if (value === undefined || value === null) {
      return '';
    }
    return new Intl.NumberFormat('en-IN', { style: 'currency', currency: 'INR' }).format(value);
  }

}

템플릿에서 이 파이프를 사용하여 인도 형식으로 출력을 가져옵니다.

국제결제 부탁드립니다.파라미터를 이해하기 위한 NumberFormat 매뉴얼을 참조하십시오.

언급URL : https://stackoverflow.com/questions/53862529/displaying-a-number-in-indian-format-using-angular-2

반응형