Money.js es una pequeña biblioteca JavaScript para la conversión de divisas. No tiene dependencias y es extremadamente liviana, apenas 1.1kb de peso.
La biblioteca esta pensada para ser utilizada como complemento de frameworks y bibliotecas más extensas, por lo que están muy bien analizados los posibles escenarios que pueden provocar conflictos. Principalmente, y como sugiere el autor, Money.js esta probado con bibliotecas muy famosas como NodeJS/CJS.
Ejemplo de uso:
// Convertir de una a otra moneda:
fx.convert(12.99, {from: "GBP", to: "HKD"});
// Encadenamiento de conversiones:
fx(1000).from("USD").to("GBP");
fx(1000).to("AED");
// Configuración simple:
fx.convert(5318008);
fx(5318008).to("AED");
Money.js contempla que las conversiones entre monedas están sometidas a constantes cambios por lo que modificar un parámetro es realmente simple, a continuación inserto un ejemplo de como configurar los valores actuales de cuatro monedas distintas.
fx.base = "USD";
fx.rates = {
"EUR" : 0.74510096, // ej. 1 USD === 0.74510096 EUR
"GBP" : 0.64771034,
"HKD" : 7.78191949,
"USD" : 1, // Conversion base (1:1)
/* etc */
}
Si money.js no te convenció por alguna razón te recomiendo probar Accounting.js una biblioteca muy similar pero con pequeñas diferencias.
Web: Money.js