ng-percentize

HTML

<div ng-app="sample">
    <div>
    default 2 decimals: {{ 3 | percentify }}% <br>
    3 decimals : {{ 0.1994 | percentify: 3 }}% <br>    
    </div>
</div>

JavaScript

/* convert a fractional to a pretty percentage with locale support 
  percentify(155.00,2,2,'de') ; // 15.500,00
*/

function percentify(number, maxFractionDigits, minFractionDigits, languageTag) {
    if (isNaN(number)) {
        return 'NaN';
    }
    number = number * 100;

    languageTag = languageTag || 'en'; // i.e:  de, it, fr, vi

    if (typeof minFractionDigits ==='undefined') {
        minFractionDigits = 0;
    }
    if (typeof maxFractionDigits ==='undefined') {
        maxFractionDigits = 2;
    }
    return number.toLocaleString(languageTag,{minimumFractionDigits: minFractionDigits, maximumFractionDigits:maxFractionDigits});
};

angular.module('ng-utils.percentify',[]).filter('percentify', function () {
  return percentify;
});

angular.module('sample', ['ng-utils.percentify'])