angular.filter.currency

Description

Formats a number as a currency (ie $1,234.56). When no currency symbol is provided, default symbol for current locale is used.

Usage

In HTML Template Binding

{{ currency_expression | currency[:symbol] }}

In JavaScript

angular.filter.currency(amount[, symbol])

Parameters

Returns

{string}

Formatted number.

Example

  <script>
    function Ctrl() {
      this.amount = 1234.56;
    }
  </script>
  <div ng:controller="Ctrl">
    <input type="number" ng:model="amount"/> <br/>
    default currency symbol ($): {{amount | currency}}<br/>
    custom currency identifier (USD$): {{amount | currency:"USD$"}}
  </div>
  it('should init with 1234.56', function() {
    expect(binding('amount | currency')).toBe('$1,234.56');
    expect(binding('amount | currency:"USD$"')).toBe('USD$1,234.56');
  });
  it('should update', function() {
    input('amount').enter('-1234');
    expect(binding('amount | currency')).toBe('($1,234.00)');
    expect(binding('amount | currency:"USD$"')).toBe('(USD$1,234.00)');
    expect(element('.doc-example-live .ng-binding').prop('className')).
      toMatch(/ng-format-negative/);
  });