@devix-tecnologia/numero-por-extenso
Version:
Escreve números por extenso: normais, monetários e porcentagens.
23 lines • 1.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = porExtenso;
const common_js_1 = require("../common.js");
/**
* Converte um número para sua representação por extenso em reais.
*
* @param numero O número (como número ou string) a ser convertido para extenso.
* @returns A representação por extenso do valor em reais e centavos.
*/
function porExtenso(numero) {
let numberStr = numero.toString().replace("-", "").split("."), numberBefore = parseInt(numberStr[0]) || 0, numberAfter = parseInt(((numberStr[1] || "0") + "00").substring(0, 2));
let numberBeforeExtended = (numero < 0 ? "menos " : "") + (0, common_js_1.numberInFull)(numberBefore), numberAfterExtended = (0, common_js_1.numberInFull)(numberAfter);
return ((numberBefore > 0
? numberBeforeExtended + (numberBefore == 1 ? " real" : " reais")
: "") +
(numberAfter > 0
? (numberBefore > 0 ? " e " : "") +
numberAfterExtended +
(numberAfter == 1 ? " centavo" : " centavos")
: ""));
}
//# sourceMappingURL=monetario.js.map